<!--
{
  "availability" : [

  ],
  "documentType" : "symbol",
  "framework" : "WatchConnectivity",
  "identifier" : "/documentation/WatchConnectivity",
  "metadataVersion" : "0.1.0",
  "role" : "Framework",
  "symbol" : {
    "kind" : "Framework",
    "modules" : [
      "Watch Connectivity"
    ],
    "preciseIdentifier" : "WatchConnectivity"
  },
  "title" : "Watch Connectivity"
}
-->

# Watch Connectivity

Implement two-way communication between an iOS app and its paired watchOS app.

## Overview

Use this framework to transfer data between your iOS app and the WatchKit extension of a paired watchOS app. You can pass small amounts of data or entire files. You also use this framework to trigger an update to your watchOS app’s complication.

After initiating a transfer from your app, the system assumes responsibility for the transmission of any data. Most transfers happen in the background when the receiving app is inactive. When the app wakes up, it is notified of any data that arrived while it was inactive. Live communication is also possible when both apps are active.

## Topics

### Essentials

Initiate transfers between your iOS app and watchOS app.

[`WCSession`](/documentation/WatchConnectivity/WCSession)

The object that initiates communication between a WatchKit extension and its companion iOS app.

[`WCSessionDelegate`](/documentation/WatchConnectivity/WCSessionDelegate)

A delegate protocol that defines methods for receiving messages sent by a [`WCSession`](/documentation/WatchConnectivity/WCSession) object.

### Data Objects

Monitor the progress of files being transferred.

[`WCSessionFile`](/documentation/WatchConnectivity/WCSessionFile)

Information about a file currently being transferred between an iOS app and WatchKit extension.

[`WCSessionFileTransfer`](/documentation/WatchConnectivity/WCSessionFileTransfer)

Information about in-progress file transfers.

[`WCSessionUserInfoTransfer`](/documentation/WatchConnectivity/WCSessionUserInfoTransfer)

Information about in-progress data transfers.

### Sample Code

[Transferring data with Watch Connectivity](/documentation/WatchConnectivity/transferring-data-with-watch-connectivity)

Transfer data between a watchOS app and its companion iOS app.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)