该应用程序缺少必需的权利 com.apple.developer.icloud-services'
The application is missing required entitlement com.apple.developer.icloud-services'
我在我的应用程序中使用 public iCloud 数据库,它运行良好并且已在商店上架。
将我的应用程序更新到新版本时(iOS9 上的 Xcode 7)我遇到了崩溃:
CKContainer * container = [CKContainer containerWithIdentifier:@"iCloud.com.identifier"];
*** Terminating app due to uncaught exception 'CKException', reason: 'The application is missing required entitlement com.apple.developer.icloud-services'
这只会在更新后首次启动应用程序时发生,并且只会在 iOS9 上发生。在首次(更新)启动后,应用程序启动并且 iCloud 会按预期工作。
我可以通过下载该应用程序的当前商店版本,然后 运行 从 Xcode 7.
下载更新的应用程序来始终如一地重现崩溃
如果我使用 iOS8 执行相同的步骤(下载生产应用程序并更新),我不会遇到同样的崩溃。
我猜这是一个 iOS9 或 Xcode 7 错误。有任何想法吗?
编辑:
这实际上发生在 iOS9 上首次启动该应用程序时,无论我是在更新还是刚开始安装。
打开和关闭 iCloud 功能似乎已经解决了这个问题。
切换 iCloud 对我不起作用。重新安装应用程序也没有用。每当我启用断点时,问题似乎就会发生。如果我关闭它们,它会毫无问题地运行。
更改了我的应用程序的名称,因此授权文件应该有所不同。关闭并重新打开重新创建所需的文件。关闭断点使其过滤(奇怪)。
对我来说,我有为我的测试目标指定的代码签名权利。所以该应用程序可以正常构建。但是单元测试无论如何都会退出。从测试目标的构建设置中清除代码签名权利字段解决了这个问题。后。许多。小时。
对我来说,切换 iCloud 功能 off/on 是修复它的方法,因为之后在权利文件中创建了一个新密钥:"APS Environment" 及其值 "production"或 "deployment".
切换到 Xcode 的新版本后,我遇到了这个错误。 None 其他修复程序有效。仔细一看,代码签名身份发生了变化!当我把它放回去时,一切正常。
Xcode 11.1
确保您已为 debug 和 release 模式启用它:
我在我的应用程序中使用 public iCloud 数据库,它运行良好并且已在商店上架。
将我的应用程序更新到新版本时(iOS9 上的 Xcode 7)我遇到了崩溃:
CKContainer * container = [CKContainer containerWithIdentifier:@"iCloud.com.identifier"];
*** Terminating app due to uncaught exception 'CKException', reason: 'The application is missing required entitlement com.apple.developer.icloud-services'
这只会在更新后首次启动应用程序时发生,并且只会在 iOS9 上发生。在首次(更新)启动后,应用程序启动并且 iCloud 会按预期工作。
我可以通过下载该应用程序的当前商店版本,然后 运行 从 Xcode 7.
下载更新的应用程序来始终如一地重现崩溃如果我使用 iOS8 执行相同的步骤(下载生产应用程序并更新),我不会遇到同样的崩溃。
我猜这是一个 iOS9 或 Xcode 7 错误。有任何想法吗?
编辑: 这实际上发生在 iOS9 上首次启动该应用程序时,无论我是在更新还是刚开始安装。
打开和关闭 iCloud 功能似乎已经解决了这个问题。
切换 iCloud 对我不起作用。重新安装应用程序也没有用。每当我启用断点时,问题似乎就会发生。如果我关闭它们,它会毫无问题地运行。
更改了我的应用程序的名称,因此授权文件应该有所不同。关闭并重新打开重新创建所需的文件。关闭断点使其过滤(奇怪)。
对我来说,我有为我的测试目标指定的代码签名权利。所以该应用程序可以正常构建。但是单元测试无论如何都会退出。从测试目标的构建设置中清除代码签名权利字段解决了这个问题。后。许多。小时。
对我来说,切换 iCloud 功能 off/on 是修复它的方法,因为之后在权利文件中创建了一个新密钥:"APS Environment" 及其值 "production"或 "deployment".
切换到 Xcode 的新版本后,我遇到了这个错误。 None 其他修复程序有效。仔细一看,代码签名身份发生了变化!当我把它放回去时,一切正常。
Xcode 11.1
确保您已为 debug 和 release 模式启用它: