用户默认值未提供值

时间:2019-06-06 10:39:50

标签: ios swift userdefaults

我正在通过我的应用设置用户默认值。然后我添加了NotificationContentExtention,它在项目中创建了另一个文件夹,作为主应用程序文件夹的同级文件。我尝试访问相同的用户默认值,但并没有给我该值。

var sharedPreference    : UserDefaults  = UserDefaults.init(suiteName: "user-key-value")!

我在两个地方都在创建用户默认值。

2 个答案:

答案 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()

并以相同的方式访问数据。