我正试图发布一个 Catalyst 应用程序进行测试。由于没有适用于 Mac 的 Test Flight,我的意图是分发一个已签名的存档,以尽量减少我的用户在运行该应用程序时收到的警告数量。我做了以下工作。
我以为会提交公证,但却收到了一个错误。
Provisioning profiled profiled failed qualification. Profile doesn't include the com.apple.developer.default-data-protection entitlement.
随后,我通过以下方式检查了Mac OS的Provisioning profile developer.apple.com.
我有一个标注为 "XC OSX: "的配置文件(假设是指Xcode自动生成的),类型字段为 "开发者ID应用"。果然,虽然它显示了iCloud、应用内购买等功能,但在 "启用的能力 "部分,它并没有数据保护功能。
但是,在Xcode中,当我选择目标并进入 "签名和能力 "时,数据保护已经被列出。当我点击MacOS provision profile旁边的信息 "i "按钮时,它说com.apple.developer.default-data-protection已经启用。(实际上IOS和MacOS供应配置文件都显示了这一点)。
接下来,我查看了 developer.apple.com 上的 Bundle Identifier,看到 Data Protection 列在 capabilities 下。
我试着在Xcode中删除并重新添加数据保护,但错误仍然发生。
我尝试在 developer.apple.com 上手动创建开发者 ID 配置文件,但生成的配置文件仍然缺乏数据保护。
我尝试在developer.apple.com上的标识符下删除并重新添加数据保护。这成功地使现有的配置文件无效(包括Xcode的和我创建的)。当我再次尝试签名时,创建了一个新的配置文件,但它仍然缺乏数据保护,错误仍然发生。
我在这里遗漏了什么?我还需要做什么才能在供应配置文件中启用数据保护?
烧了一个支持票,找到了答案。我读到的消息为。
你失败了 你没有数据保护(但你需要它)。
但按照苹果公司的说法,这其实意味着。
你失败了 你想要数据保护(因为你打开了它),但是没有(因为这个配置不支持)。
所以,"数据保护不见了 "的解决方案是......打开数据保护。关闭.