我正在通过我的应用设置用户默认值。然后我添加了NotificationContentExtention
,它在项目中创建了另一个文件夹,作为主应用程序文件夹的同级文件。我尝试访问相同的用户默认值,但并没有给我该值。
var sharedPreference : UserDefaults = UserDefaults.init(suiteName: "user-key-value")!
我在两个地方都在创建用户默认值。
答案 0 :(得分:0)
要启用数据共享,请使用Xcode或Developer Portal启用 包含应用及其包含的应用扩展程序的应用组。 接下来,在门户中注册应用程序组并指定应用程序组 在包含的应用中使用。要了解与应用组一起使用的信息, 参见Adding an App to an App Group。
因此,首先您必须为应用及其扩展程序启用数据共享,然后才能使用UserDefaults
答案 1 :(得分:0)
您可以使用App组插入数据,并使用具有用户默认设置的App组访问相同的数据,
用于插入数据
var userDefaults = UserDefaults(suiteName: "<Your_App_Group>")
userDefaults?.set(your-object, forKey: your-key)
userDefaults?.synchronize()
并以相同的方式访问数据。