在Xcode中启用权限会导致基本应用程序无法启动

6
我在Xcode 4.2中创建了一个基本应用程序。这是一个非常简单的应用程序,我没有更改任何东西。点击运行按钮后,您将得到标准的基础应用程序窗口。如果我为我的目标打开权限并点击运行,则不会出现任何调试器错误,但窗口永远不会弹出。我使用Console.app检查了日志,得到了以下内容:

第一个错误:

taskgated: killed com.alsbury.EntitlementsTest[pid 15903] because its use of the com.apple.developer.ubiquity-container-identifiers entitlement is not allowed

移除iCloud容器“com.alsbury.EntitlementsTest”后,我遇到了这个错误:

taskgated: killed com.alsbury.EntitlementsTest[pid 15903] because its use of the com.apple.developer.ubiquity-container-identifiers entitlement is not allowed

因为iCloud类型的东西,我甚至将一个应用程序添加到了我的开发者帐户中,添加了一个配置文件并添加了我的机器。有什么想法吗?现在非常困惑。

你说你有开发者账户,那你是注册过的Mac开发者(付费开发者计划)吗? - NJones
是的,我有一个付费的桌面开发者账户。 - David
大卫,这个问题解决了吗?你还遇到困难吗? - Craig Otis
我也遇到了这个问题。尝试过:(1)关闭应用程序ID的iCloud(并重新生成配置文件);(2)同时使用开发和分发配置文件(开发配置文件已注册我的机器ID);(3)输入无iCloud权利(在这种情况下,Xcode会自动生成它们),输入空的iCloud权限(空数组,空字符串),输入正确的iCloud权限;(4)禁用沙盒;(5)保留沙盒启用状态并删除容器。没有什么帮助。禁用权限后运作正常。Xcode 4.2.1。 - Andrey Tarantsov
1个回答

7
请确保以下几点。虽然这是一个繁琐的过程,但如果你仔细按照步骤操作,应该就可以完成了。
1) 在苹果网站的开发者证书工具页面上,你已经注册了你的机器及其UUID。
2) 你已经创建并下载了开发证书。
3) 在同样的工具中,你的App ID已经配置为iCloud。通常只需要勾选一个复选框即可。
4) 你的应用程序的开发者预配文件指向了(3)中提到的App ID,以及(1)中注册的硬件系统和(2)中提到的证书。
5) 下载新的预配文件后,请在系统中双击安装,在Xcode中将其拖到“组织器”的“预配文件”窗格中也进行安装。
6) 在应用程序的构建设置中,确保代码签名标识符指向你的新预配文件。

1
当然,如果您仍然遇到问题,请在此处留言,我会回来检查。 - Craig Otis
1
我不是原帖作者,但我遇到了同样的问题。在检查和重新检查了上述所有点之后,我仍然收到“因为其使用com.apple.developer.ubiquity-container-identifiers授权不被允许”的消息 :( - coneybeare
1
对我来说,唯一的解决方法是禁用应用程序的iCloud,并从授权中删除与iCloud相关的项目。对于我的应用程序来说并不是什么大问题,但这种解决方案并不适用于每个人。 - coneybeare
@craig 太厉害了!抱歉这么晚才回复。我没有使用iCloud,但我仍然打开了它。应用程序已编译并弹出窗口。非常感谢。 - David
Coneybeare的建议对我不起作用。禁用了iCloud,重新生成并重新安装了配置文件,并删除了iCloud授权。使用的Xcode版本为4.2.1。 - Andrey Tarantsov
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接