XCode8,Jenkins打包签名问题

XCode升级至8.0,Jenkins打包签名问题
升级Xcode8之后,Jenkins自动打包就不行了,问题主要出在签名上。XCode8.0出现了自动签名(automatically signed)的功能,并且对于一个新的Xcode项目,默认是开启了自动签名的,因此导致直接升级Xcode8将导致Jenkins之前的打包配置失效。
报错如下:
xxxxx has conflicting provisioning settings. xxxxx is automatically signed , but code signing identity xxxxxxxxxxxxx has been manually specified .
Set the code signing identity value to "iPhone Developer" in the build settings editor, or switch to manual signing in the project editor.
目前官方没有提供此功能开关的命令行接口,所以只能通过打开项目取消勾选,并在下拉框中选择对应签名后,才能用指令进行打包。
基于以上思路,我的做法是,"手动勾选"->"手动取消勾选,下拉框中选择对应签名"。然后diff一下前后project.pbxproj里面的内容,打算通过shell指令修改文件内容,模拟手动的上述步骤。
方法如下:
sed -i "" s/'ProvisioningStyle = Automatic;'/'DevelopmentTeam = XXXXXXXXXX;ProvisioningStyle = Manual;'/g xxx.xcodeproj/project.pbxproj
sed -i "" s/'PROVISIONING_PROFILE = "";'/'PROVISIONING_PROFILE = " xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";'/g xxx.xcodeproj/project.pbxproj
sed -i "" s/'PROVISIONING_PROFILE_SPECIFIER = "";'/'PROVISIONING_PROFILE_SPECIFIER = xxx;'/g xxx.xcodeproj/project.pbxproj
sed -i "" s/'DEVELOPMENT_TEAM = "";'/'DEVELOPMENT_TEAM = XXXXXXXXXX;'/g xxx.xcodeproj/project.pbxproj

额外的一些问题——升级到了最新系统macOS Sierra:
打包中如果报出如下错误:
User interaction is not allowed
codesign failed with exit code 1
可能是系统升级造成的问题,解决办法:
(1)在应用程序里搜索Keychain Access,中文叫钥匙串访问权限
(2)找到你的证书,右击 — 显示简介 — 访问控制 — 选中【允许所有应用程序访问此项目】 — 存储更攺 — 输入密码后保存更攺,解决问题。
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值