加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xcode – Travis CI无法构建代码签名错误

发布时间:2020-12-15 02:00:48 所属栏目:百科 来源:网络整理
导读:Travis CI无法构建我的应用程序,因为Xcode项目设置为需要代码签名,Travis没有我的证书。我可以通过禁用代码签名来解决这个问题,但是沙箱和权利将不起作用。我知道通常从命令行构建时,可以将CODE_SIGN_IDENTITY =“”CODE_SIGNING_REQUIRED = NO转换为xco
Travis CI无法构建我的应用程序,因为Xcode项目设置为需要代码签名,Travis没有我的证书。我可以通过禁用代码签名来解决这个问题,但是沙箱和权利将不起作用。我知道通常从命令行构建时,可以将CODE_SIGN_IDENTITY =“”CODE_SIGNING_REQUIRED = NO转换为xcodebuild以禁用代码签名,但是如何在Travis CI中执行此操作?

这是我的.travis.yml:

language: objective-c
xcode_workspace: "Mac Linux USB Loader.xcworkspace"
xcode_scheme: "Mac Linux USB Loader"

这是错误(我已经编写了许多以前的引用Cocoapods的行,因为它们不相关:

Check dependencies
Code Sign error: No code signing identities found: No valid signing identities (i.e. certificate and private key pair) matching the team ID “T47PR9EQY5” were found.

解决方法

你尝试添加这个你travis.yml:

language: objective-c

script:
  - xcodebuild [DEFAULT_OPTIONS] CODE_SIGNING_REQUIRED=NO

或者导入一个开发(如果你要在你的build上使用发行版),那么钥匙串的cert / key就可以复制你的团队配置配置文件,以使代码签名工作。喜欢这个:

language: objective-c

before_script:
- ./scripts/add-key.sh

script:
  - xcodebuild [DEFAULT_OPTIONS] CODE_SIGNING_REQUIRED=NO

add-key.sh

#!/bin/sh

KEY_CHAIN=ios-build.keychain
security create-keychain -p travis $KEY_CHAIN
# Make the keychain the default so identities are found
security default-keychain -s $KEY_CHAIN
# Unlock the keychain
security unlock-keychain -p travis $KEY_CHAIN
# Set keychain locking timeout to 3600 seconds
security set-keychain-settings -t 3600 -u $KEY_CHAIN

# Add certificates to keychain and allow codesign to access them
security import ./scripts/certs/dist.cer -k $KEY_CHAIN -T /usr/bin/codesign
security import ./scripts/certs/dev.cer -k $KEY_CHAIN -T /usr/bin/codesign

security import ./scripts/certs/dist.p12 -k $KEY_CHAIN -P DISTRIBUTION_KEY_PASSWORD  -T /usr/bin/codesign
security import ./scripts/certs/dev.p12 -k $KEY_CHAIN -P DEVELOPMENT_KEY_PASSWORD  -T /usr/bin/codesign

echo "list keychains: "
security list-keychains
echo " ****** "

echo "find indentities keychains: "
security find-identity -p codesigning  ~/Library/Keychains/ios-build.keychain
echo " ****** "

# Put the provisioning profile in place
mkdir -p ~/Library/MobileDevice/Provisioning Profiles

cp "./scripts/profiles/iOSTeam_Provisioning_Profile_.mobileprovision" ~/Library/MobileDevice/Provisioning Profiles/
cp "./scripts/profiles/DISTRIBUTION_PROFILE_NAME.mobileprovision" ~/Library/MobileDevice/Provisioning Profiles/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读