如何解决iOS 14小部件UserDefaultssuiteName :)无法正常工作
Xcode 12.0(12A7208) MacOS 10.15.6(19G2021)
- 创建一个新的SwiftUI项目。
- 添加功能应用组。
- 创建一个新的Target Widget Extension,添加Capability App Groups。
- 在主应用中,使用
UserDefaults(suiteName:).set
保存Int数据。 - 在Widget中,在
getTimeline(for:in:completion:)
函数下仅调用UserDefaults(suiteName:).value
,无法获取Int数据。但是在Main App中可以。
suiteName
以group.
开头,在Widget和Main App中相同。
很困惑...
解决方法
对于以后的读者,我发现了这个错误-“代码签名错误-验证CODE_SIGN_ENTITLEMENTS的值”,该错误的位置非常明显。
要解决:
- 转到您的新目标
- 转到构建设置
- 转到“签名”部分。确保已将.entitlement文件分配给Release和Debug。权利文件应该已经在您的文件夹结构中自动创建了。您只需要确保正确的路径即可。 “ Widget / WidgetExtension.entitlement”
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。