预备知识
打包机器需要安装 Xcode 7,安装 xcode command line tools (用xcode-select --install
命令安装)
Xcode7.2 上架流程
iOS 开发者中的公司账号与个人账号之间有什么区别?
Bundle ID 就是 Xcode 里 iOS 项目 Target - Build Settings 下的 Bundle identifier
prefix + bundle ID 组成 App ID
Provisioning Profile 文件指定了 App ID 和 Certificate
Xcode 中 iOS 项目 Build Settings 里的
命令行打包
使用 workspace 时的脚本
xcodebuild clean -project ./MyProject.xcodeproj -configuration Release
xcodebuild archive -workspace ./MyProject.xcworkspace -scheme MyProject -archivePath ./MyProject.xcarchive CODE_SIGN_IDENTITY="iPhone Distribution: SHANGHAI TESTERHOME GROUP CO., LTD." PROVISIONING_PROFILE="97824172-beb3-4674-a266-13f57242277f"
xcodebuild -exportArchive -archivePath ./MyProject.xcarchive -exportPath ./outputiPA -exportOptionsPlist ./exportOptions.plist
使用 project 时的脚本
xcodebuild clean -project MyProject.xcodeproj -configuration Release
xcodebuild archive -project ./MyProject.xcodeproj -scheme MyProject -archivePath ./MyProject.xcarchive CODE_SIGN_IDENTITY="iPhone Distribution: SHANGHAI TESTERHOME GROUP CO., LTD." PROVISIONING_PROFILE="97824172-beb3-4674-a266-13f57242277f"
xcodebuild -exportArchive -archivePath ./MyProject.xcarchive -exportPath ./outputiPA -exportOptionsPlist ./exportOptions.plist
用 Xcode 打包的步骤是
xcodebuild clean
命令xcodebuild archive
命令xcodebuild -exportArchive
xcodebuild -list
命令也可以查看java -jar jenkins.war
启动的 Jenkins)执行命令时需要输入密码,把证书移到 “系统” 里就不用输密码了,也可以用 security unlock-keychai 命令解锁,也可以修改证书的信任设置
xcodebuild -help
命令看键值对的说明,
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>method</key>
<string>enterprise</string>
<key>compileBitcode</key>
<string>YES</string>
</dict>
</plist>
xcodebuild clean -project MyProject.xcodeproj -configuration Debug
xcodebuild archive -project ./MyProject.xcodeproj -scheme MyProject -configuration Debug -archivePath ./MyProject.xcarchive CODE_SIGN_IDENTITY="iPhone Distribution: SHANGHAI TESTERHOME GROUP CO., LTD." PROVISIONING_PROFILE="97824172-beb3-4674-a266-13f57242277f"
xcodebuild -exportArchive -archivePath ./MyProject.xcarchive -exportPath ./outputiPA -exportOptionsPlist ./exportOptions.plist
其他
iOS 开发-Xcode Debug、Release、Archive、Profile、Analyze 概念解释
每个 Xcode 大版本之间经常有变动,注意以官网为准