这是一个现有的应用程序,编译和分发多次。自从更新到Xcode 5,我有这个错误弹出。
我在代码签名中选择了我的开发人员配置文件用于调试。 删除派生数据几次。 戒烟几次 下载并尝试重新添加我的开发者证书。 重置我的电脑!检查更新 尝试使用黑魔法! 方案>生成配置被设置为调试
奇怪的情况是,我正在编译到iOS 6.1,这样我就可以在我的iPhone 3GS上运行——基础是SDK iOS 7?这是一个问题吗?我只需要在更换到iOS 7之前先测试一下。
这是一个现有的应用程序,编译和分发多次。自从更新到Xcode 5,我有这个错误弹出。
我在代码签名中选择了我的开发人员配置文件用于调试。 删除派生数据几次。 戒烟几次 下载并尝试重新添加我的开发者证书。 重置我的电脑!检查更新 尝试使用黑魔法! 方案>生成配置被设置为调试
奇怪的情况是,我正在编译到iOS 6.1,这样我就可以在我的iPhone 3GS上运行——基础是SDK iOS 7?这是一个问题吗?我只需要在更换到iOS 7之前先测试一下。
当前回答
实际上,这是你的配置文件——调试是不正确的。
其他回答
实际上,这是你的配置文件——调试是不正确的。
更新:
Xcode 5.1似乎修复了下拉菜单,现在当两个配置文件有相同的名字时,它会显示一个“(blah blah)”。这可以让您选择正确的。哪个更好:)
被这个咬了几次。Xcode5显示“配置文件”作为一个单一的字段,这总是不正确的,苹果不应该这样编码他们的GUI(初学者错误从苹果那里)。
在Xcode5(没有以前的版本)中,有两个“Provisioning Profile”值。在设置“代码签名标识”之前必须设置此选项。显然,因为它必须先设置……苹果将其置于列表的第二位,比必须设置为“前面”的内容低3条。
(给糟糕的GUI设计加分…)
它也有问题:如果您有两个相同名称的Provisioning Profiles, Xcode5将只允许您选择其中一个。为了解决这个问题,你必须使用iPhone配置实用程序来找到你想要的配置文件,找到30位的“配置文件标识符”,并将其复制/粘贴到配置文件下拉菜单的“其他”值中。
你的配置文件必须有一个“调试”值和一个不同的“发布”值(除非你手工创建了一个自定义的大型配置文件,苹果将两者分开)。
调试配置文件通常会有上面描述的同名错误——大多数人会使用苹果自动生成的团队配置文件,苹果错误地总是为所有目标和所有项目命名相同。(Xcode5中的另一个bug)。
设置了这两个值之后,“代码签名标识”字段将最终开始正确工作。事实上,它工作得很好:在大多数先前版本的Xcode中,这个字段被破坏了,“自动”选择很少工作。在Xcode5中,它只能使用你预先选择的配置文件中找到的代码签名值——所以它似乎100%正确。
(例如,你可以安全地将其设置为“自动”。在之前版本的Xcode中,Xcode通常会“自动”使用一个发布配置文件作为开发版本,反之亦然,这导致了很多问题)
我没有接受上述答案,因为我需要解决一系列问题:
第三方SDK未设置为发行版。 第三方SDK未设置为arm64,我认为这是我造成的,因为我徒劳地修复了编译到arm64的问题。 需要完成清除任何旧证书,并从苹果添加新的证书。这是件好事。 我认为Xcode 5现在在首选项中隐藏了证书和配置文件,这增加了挫败感。 然后确保在构建设置中的调试和发布设置中选择了正确的供应配置文件。
一如既往地感谢人们的帮助。
尝试重新启动XCode
在根据所有这些建议设置了供应和代码签名设置后,重新启动才最终允许它在供应设置为none和代码签名设置为iOS开发者(自动)的情况下运行。
当你的设备通过电缆连接到你的计算机,并且你构建+运行你的应用程序时,你的设备将尝试调试。调试只允许用于开发概要文件。
If you build + run with a Development Profile + Development Signing Code, everything will be OK If you build + run with an AppStore Distribution profile + Distribution Signing Code, the app will not even reach your device. This build is only for uploading to AppStore If you build + run with an AdHoc Distribution profile + Distribution Signing Code, you'll get the "failed to get the task for process..." error, but the app will get installed in your device. Unplug the device and run the app from your device. It's running in distribution environment. Enjoy :)