这是一个现有的应用程序,编译和分发多次。自从更新到Xcode 5,我有这个错误弹出。

我在代码签名中选择了我的开发人员配置文件用于调试。 删除派生数据几次。 戒烟几次 下载并尝试重新添加我的开发者证书。 重置我的电脑!检查更新 尝试使用黑魔法! 方案>生成配置被设置为调试

奇怪的情况是,我正在编译到iOS 6.1,这样我就可以在我的iPhone 3GS上运行——基础是SDK iOS 7?这是一个问题吗?我只需要在更换到iOS 7之前先测试一下。


当前回答

我有这个问题,一旦我设置了CODE_SIGN_IDENTITY和PROVISIONING_PROFILE,它都可以正常工作,

请注意这在Xcode 5中有变化,以前的版本没有 在构建设置中的PROVISIONING_PROFILE

//:configuration = Adhoc
CODE_SIGN_IDENTITY = iPhone Distribution: orgname
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution: orgname

注意,这里我必须手动将iphone developer写入第二个条目,因为自动选择似乎不起作用

//:configuration = Debug
CODE_SIGN_IDENTITY = iPhone Developer: Joe Bloggs (0A0AA00A00)
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer: Joe Bloggs (0A0AA00A00)

//:configuration = Release
CODE_SIGN_IDENTITY = iPhone Distribution: orgname
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution: orgname

然后更新和配置配置文件设置

添加您的个人资料id 0000只是为了隐私

//:configuration = Adhoc 
PROVISIONING_PROFILE = 11111111-1111-1111-1111-111111111111
PROVISIONING_PROFILE[sdk=iphoneos*] = 11111111-1111-1111-1111-111111111111

//:configuration = Debug
PROVISIONING_PROFILE = 00000000-0000-0000-0000-000000000000
PROVISIONING_PROFILE[sdk=iphoneos*] = 00000000-0000-0000-0000-000000000000

//:configuration = Release
PROVISIONING_PROFILE = 22222222-2222-2222-2222-222222222222
PROVISIONING_PROFILE[sdk=iphoneos*] = 22222222-2222-2222-2222-222222222222

其他回答

它可能由配置配置文件来执行。对于我的情况,我试图在我的手机上运行应用程序,而供应配置文件被设置为adhoc配置文件(XC Ad Hoc),因此出现了错误。我需要将其更改为由xcode管理的iOS团队配置文件(以避免在开发中心进行手动工作)。

我没有接受上述答案,因为我需要解决一系列问题:

第三方SDK未设置为发行版。 第三方SDK未设置为arm64,我认为这是我造成的,因为我徒劳地修复了编译到arm64的问题。 需要完成清除任何旧证书,并从苹果添加新的证书。这是件好事。 我认为Xcode 5现在在首选项中隐藏了证书和配置文件,这增加了挫败感。 然后确保在构建设置中的调试和发布设置中选择了正确的供应配置文件。

一如既往地感谢人们的帮助。

Hasan83的答案对我有用。临时供应给出了这个错误,我的设备也没有包括在供应文件中。我将自动设置为供应和构建。Xcode提示修复这个问题,因此通过下载和设置开发人员供应文件修复了这个问题。

我最终通过记住在项目和目标选项卡中设置代码签名和供应参数来解决这个问题…

感谢所有其他答案的帮助,我是这样解决的:

创建了新的空项目 在设备上运行,效果很好 在旧项目中,打开“project, Targets”选项卡。 在Project中,将所有代码签名属性设置为与新的空项目相同(在我的例子中都是关闭的) 在Target中,对目标执行同样的操作。

在这一点上,很难判断哪种设置适用于哪种操作模式,所以我只是从一个一切正常的项目开始。