【发布时间】:2015-12-14 19:33:30
【问题描述】:
这在 watchOS 1 上不是问题,但现在在 watchOS 2 上我无法读取手表扩展上的值。
根据Apple docs,是可以的。 根据this thread 上的一些人的说法,这是可能的。 据this thread 上的苹果员工称,这是可能的。
据我所知,我正在正确设置所有内容:
- 我在 iOS 应用和手表扩展上启用了应用组 相同的标识符。
- 我将 Settings-Watch.bundle 添加到 iOS 应用程序
并添加了
ApplicationGroupContainerIdentifierplist 的标识符
当我使用标识符作为套件名称初始化 NSUserDefaults 对象时,我无法读取手表扩展上的值。我可以在 iOS 应用程序上阅读它们。这发生在模拟器和真实设备中。
请不要发布有关如何使用 Watch Connectivity 执行此操作的答案。 可以在没有 Watch Connectivity 的 watchOS 2 上仅使用共享应用程序组来执行此操作,人们可以做到这一点,而这里直接出自docs:
在 watchOS 2 中,您的 WatchKit 扩展可以读取首选项的值,但您不能写入新值。 watchOS 2 中的首选项会从 iOS 转发到 Apple Watch,但您所做的任何修改都不会发送回 iOS。
【问题讨论】:
-
您能否发布一个有关您如何尝试读取设置包的示例?
-
我也在手表上试过这个,我可以确认问题仍然存在! (启用组,具有适当的配置文件和设置)
标签: ios nsuserdefaults watchkit ios-app-group