【发布时间】:2014-09-16 03:18:03
【问题描述】:
我们有一个自动构建系统,它一直在 OSX 10.8 (Mac Mini - Xcode 5.1.1) 上完美运行,直到我们更新到 10.9 (Mac Pro - Xcode 5.1.1)。
更新到 OSX 10.9 后,当我们尝试通过应用程序加载器上传 IPA 时,我们开始收到以下错误:
ERROR ITMS-9000: "Missing or invalid signature. The bundle 'com.my.bundle" at bundle path "Payload/bundle.app" is not signed using an Apple submission certificate."
以下语句在 Unity 构建 Xcode 项目后运行。
xcodebuild -target "Unity-iPhone" -sdk "iphoneos" -configuration Release CODE_SIGN_IDENTITY="iPhone Distribution: Company Name, Inc. (DDXX7YXXXX)" PROVISIONING_PROFILE=d5e4xxxx-xxxx-xxxx-xxxx-5fef0dbe3e50;
/usr/bin/xcrun -sdk iphoneos PackageApplication -v "$IOS_RELEASE_SAVE_PATH/build/bundle.app" -o "IOS_IPA_PATH/bundle_RELEASE.ipa" --sign "Company Name, Inc. (DDXX7YXXXX)" --embed "/Users/Shared/Jenkins/Library/MobileDevice/Provisioning Profiles/d5e4xxxx-xxxx-xxxx-xxxx-5fef0dbe3e50.mobileprovision";
附带说明,我们的 ADHOC 构建使用相同的证书进行签名,只是不同的条款,并且工作正常。
我仔细检查了以下项目:
- 项目和配置包 ID 匹配。 (区分大小写和可能的字符替换。)
- 证书和规定是最新的。
- 分发证书对所有用户都标记为受信任。
我也手动构建了 IPA 并尝试提交,但结果相同。
我尝试过的其他选项:
- 在项目和目标中的“其他代码签名标志”中添加“--deep”。
- 将
codesign脚本添加到Build Phases(Code Signing and Mavircks: furbo.org)
任何帮助将不胜感激。
编辑:添加 - 分发证书对所有用户和平台模型/Xcode 版本都标记为受信任。
【问题讨论】:
-
我也遇到了这个错误,还没有找到解决办法。升级到 xcode 6 后开始。
-
遗憾的是,我能够解决此问题的唯一方法是从头开始重建整个构建服务器。我希望有人能够找到所描述错误的实际解决方案。
-
我最终创建了一个新用户,并在将证书下载到新用户的钥匙串中后能够使其工作。
-
感谢 Twilly,添加您之前的评论作为答案。如果有人提出,我会将其标记为“答案”。