2017-02-14 105 views
0

watchOS >= 2.2开始,iOS> = 9.3 iOS设备能够通过sessionDidDeactivate:,sessionDidBecomeInactive:与多个手表设备连接。如何识别iOS中不同的已连接手表

但是这些委托调用没有提供身份。

是否有任何系统的方式来识别不同的相关手表。

我必须手动操作吗? 例如,检查新连接的手表是否具有标识,如果不是,则给它新的标识。 收到ID后,手表还需要将其保存在某处。在这种情况下,NSUserDefaults听起来是个好地方。

回答

1

WCSession文档,苹果建议存储特定表数据为watchDirectoryURL位置,并通过WCSession通信与连接应用此信息

您的iOS应用可以使用watchDirectoryURL属性来存储数据是只针对在特定Apple Watch上运行的Watch应用程序的一个实例。在大多数情况下,您在Watch应用程序的每个实例中显示的数据都是相同的。但是,您可以使用此目录存储iOS应用程序需要与Watch应用程序正确交互的配置数据,首选项或其他数据文件。如果是这样,请使用激活和停用过程来更新您的iOS应用程序。

您可以在此位置存储UUID或类似的唯一标识符以区分手表。