swift3 - iOS 和 WatchOS 之间的 UserDefaults 不起作用

标签 swift3 nsuserdefaults watchkit

这是代码,但出于某种原因,当我从 Watch 读取时,我得到了 nil。知道我错过了什么吗?

在iOS方法中编写

@IBAction func writeDefaults(_ sender: Any) {
    UserDefaults(suiteName: "group.testingGroups")!.set(true, forKey: "myKey")
}

从 WatchOS 读取

@IBAction func readDefaults() {
    let readKey = UserDefaults(suiteName: "group.testingGroups")!.bool(forKey: "myKey")
    print("Key Value:  \(readKey)")
}

我在阅读时也尝试了以下但没有...

 let readKey = UserDefaults.init(suiteName: "group.testingGroups")!.bool(forKey: "myKey")

苹果开发者网站:

enter image description here

watch 应用扩展:

enter image description here

watch 应用:

enter image description here

iOS 项目:

enter image description here

最佳答案

watchKit 和应用程序之间使用 userDefaults 的通信已被移除。
可以使用 watchConnectivity framework 来完成

关于swift3 - iOS 和 WatchOS 之间的 UserDefaults 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41051997/

相关文章:

swift - iOS Swift 3 - 自动布局,根据文本或 View 大小更改高度

swift - 画一条像橡皮擦一样的线 Swift3

swift - 我可以制作 Swift 数据类型中缀运算符吗?

ios - NSUserDefaults 不可靠?

ios - 在 NSUserDefaults 中保存继承的对象

ios - 初始化时的用户单例和 nsuserdefault

ios - WatchKit:推送和模态转场之间的区别?没有带推送的页面导航?

ios - Apple Watch 的事件应用程序 - 画圆圈?

ios - WatchKit 数字输入控件?

ios - 在 xcode/swift 3 中点击一个 View 到 'select' 它