UserDefaults(suitename:) 有问题
Trouble with UserDefaults(suitename:)
我正在编写一个包含消息扩展的 iOS 应用程序。为了在它们之间共享数据,我创建了一个应用程序组,其密钥类似于“group.com.myCompany.myApp”。该应用程序使用 userDefaults.set(:forKey:) 存储字符串数组。然后应用程序可以获取或修改数组,扩展可以获取(但不能修改)数组。
应用程序和扩展程序都在使用 UserDefaults(suiteName:) 访问 UserDefaults。应用程序和扩展程序都使用相同的套件名称值。
我遇到的问题是,这在模拟器中工作得很好,但在 phone 上,扩展程序看不到字符串数组。我完全不知所措。
这是权利!
早些时候,为了回应已被删除的 post,我写道“据我所知,权利文件是正确的。”当我写下一个灯泡在我脑海中熄灭时:“缺少应用程序组权利,这就是它在模拟器中而不是在 phone 上工作的原因!”
我没有意识到必须为 Debug 和 Release 版本单独指定权利,而且我没有为 Release 版本指定它们。添加它可以解决问题。
我正在编写一个包含消息扩展的 iOS 应用程序。为了在它们之间共享数据,我创建了一个应用程序组,其密钥类似于“group.com.myCompany.myApp”。该应用程序使用 userDefaults.set(:forKey:) 存储字符串数组。然后应用程序可以获取或修改数组,扩展可以获取(但不能修改)数组。
应用程序和扩展程序都在使用 UserDefaults(suiteName:) 访问 UserDefaults。应用程序和扩展程序都使用相同的套件名称值。
我遇到的问题是,这在模拟器中工作得很好,但在 phone 上,扩展程序看不到字符串数组。我完全不知所措。
这是权利!
早些时候,为了回应已被删除的 post,我写道“据我所知,权利文件是正确的。”当我写下一个灯泡在我脑海中熄灭时:“缺少应用程序组权利,这就是它在模拟器中而不是在 phone 上工作的原因!”
我没有意识到必须为 Debug 和 Release 版本单独指定权利,而且我没有为 Release 版本指定它们。添加它可以解决问题。