构建iOS应用程序并通过TestFlight与Jenkins和Xcode 7

时间:2015-09-22 15:06:26

标签: ios xcode jenkins xcode7 testflight

Apple发布了Xcode 7更新,再次破坏了所有内容。

以前,我们必须处理

  

ResourceRules.plist:无法读取资源

使用描述的hack问题,例如here。有些人wonder为什么这首先发生在第一位。

但是,在Xcode 7更新时,他们通过在设置此选项时出现此错误来禁止使用Code Signing Resource Rules Path

  

ERROR ITMS-90339:“此捆绑包无效.Info.plist   包含

中的无效密钥'CFBundleResourceSpecification'

question正是关于此问题的答案,建议从构建设置中删除此选项。猜猜是什么,删除后弹出第一个错误,所以我们发现自己处于循环中。

我的问题(当然,除了我们最终陷入这个烂摊子的时候)是:

我们如何修复这两个问题,以便iOS构建在Jenkins和Xcode 7中运行,然后上传TestFlight?

4 个答案:

答案 0 :(得分:1)

看看这个:https://stackoverflow.com/a/32762413/5373468

如果你不确定这是一个错误,你也可以在这里得到确认:http://cutting.io/posts/packaging-ios-apps-from-the-command-line/

答案 1 :(得分:1)

从Xcode 7开始,我们应该使用xcodebuild代替PackageApplication来生成.ipa文件。

xcodebuild有一个新的-exportArchive选项来创建一个更像Xcode Organizer的.ipa。

详情请见答案: iOS builds / ipa creation no longer works from the command line

答案 2 :(得分:1)

我通过更改Jenkins构建设置修复了同样的问题: 转到配置>高级Xcode构建选项并添加到自定义xcodebuild参数

  

CODE_SIGN_RESOURCE_RULES_PATH = $(SDKROOT)/ResourceRules.plist

答案 3 :(得分:0)

这两个命令对我来说非常有用:

  1. 创建存档: xcodebuild -workspace“/path/to/something.xcworkspace”-scheme“some enterprise”-configuration Release -CODE_SIGN_IDENTITY =“your identity”PROVISIONING_PROFILE =“61xyz111 -22x0-2345-123x-xyxxxxxx“archive -archivePath”/where/you/want/the/archive/xyz.xcarchive“

  2. 生成IPA: xcodebuild -exportArchive -exportFormat IPA -exportProvisioningProfile“您的个人资料的名称”-archivePath“/where/you/saved/the/archive/xyz.xcarchive”-exportPath “/where/you/want/the/IPA/xyz.ipa”