iOS 10+XCode8 签名错误解决

在老的项目里运行芯片厂提供的蓝牙真机项目在新的xcode8 编译会报错,提示

1.XXXX requires a provisioning profile. Select a provisioning profile for the "Debug" build configuration in the project editor.

2.Code signing is required for product type 'Application' in SDK 'iOS 10.0'

象旧版本一样用自己开发证书签名应用仍然不行.

后面找到这里的解决
http://www.cnblogs.com/gaozhang12345/p/5891364.html

因为是直译如下一篇,实在很难看懂
http://stackoverflow.com/questions/37806538/code-signing-is-required-for-product-type-application-in-sdk-ios-10-0-stic

于是我试了一下,成功后,把要点总结一下.供大家参考(部分附图来源于原网页)

要点一. 用自己开发证书签名

这个与xcode 老版本要求是一致的.唯一不同是,需要先关掉General 选项里"Automatically manage Signing" ,否则不能修改.

iOS 10+XCode8 签名错误解决_第1张图片
Paste_Image.png

然后修改Build setting的里签名,可以是自己的签名,或者通用的iOS Developer 免Profile的签名

iOS 10+XCode8 签名错误解决_第2张图片
Paste_Image.png

要点二. 打开 "Automatically manage Signing" 让其解决签名状态异常的问题.

就是第一个图中提示 Status:Signing for 'xxxxxx' requeires a development team.

这就实际上是老版xcode 提到签名异常的提示对话框的改进.如果成功,会在team 显示你的第一步配的开发团队名称.

iOS 10+XCode8 签名错误解决_第3张图片
Paste_Image.png

要点三. 包名(Bundle ID)必须带证书申请时填的域名

比如在申请开发证书时,你申请官方域名是 http://www.bluedrum.cn ,那么
在bundle Id中,你必须以 cn.bluedurm.xxxxx打头.

这个是在iOS9以来必备的要求.

其本上做完三步,把项目clean 一下,重编译即可解决上述问题.

你可能感兴趣的:(iOS 10+XCode8 签名错误解决)