Swift3 mac应用程序和safari扩展程序之间应用程序组中的共享数据返回零

Swift3 mac应用程序和safari扩展程序之间应用程序组中的共享数据返回零,swift3,safari-extension,Swift3,Safari Extension,我有一个MacOS应用程序,它与Safari扩展共享一些数据。我不确定我做错了什么,但当我运行我的Safari扩展时,它只返回nil。 这是我使用的代码 //in my main viewcontroller if let userDefaults = UserDefaults(suiteName: "$(TeamIdentifierPrefix)") { userDefaults.set("---" as AnyObject, forKey: "distance")

我有一个MacOS应用程序,它与Safari扩展共享一些数据。我不确定我做错了什么,但当我运行我的Safari扩展时,它只返回nil。 这是我使用的代码

//in my main viewcontroller
if let userDefaults = UserDefaults(suiteName: "$(TeamIdentifierPrefix)") {
        userDefaults.set("---" as AnyObject, forKey: "distance")
        userDefaults.set("---" as AnyObject, forKey: "altitude")
        userDefaults.synchronize()
}

//in my Safari Extension
if let userDefaults = UserDefaults(suiteName: "$(TeamIdentifierPrefix)") {
        print(userDefaults.string(forKey: "distance"))
        print(userDefaults.string(forKey: "altitude"))
}


我还尝试将suiteName更改为“group.com.company.project”,但它仍然返回零。

尝试使用诸如.group(即:abc433dev.group)之类的名称。

您是否记得为应用程序和扩展添加应用程序组功能?是的。开始时,我忘记了它,然后我得到了一个错误,但现在扩展只返回nil,这就是它!我得到了我的值,但我仍然从控制台收到这样一条消息:“2017-05-27 10:05:15.001020+0200 myExtension[5794:334369][用户默认值]无法读取CFPrefsListSource中的值(域:ABC4343DEV.group,用户:kCFPreferencesAnyUser,按主机:是,容器:(null)):仅允许将kCFPreferencesAnyUser与容器一起使用系统容器,从cfprefsd Optional(“--”)Optional(“--”)分离。我应该担心吗?苹果的内部味精,不用担心