1.使用场景
简单的打包,需要clean,archive,然后export这个过程需要人工完成,太浪费时间。简单使用xcodebuild进行自动化打包,节约时间。所以我们需要以下几个步骤。
1. 清理工程缓存
2. archive工程
3. 导出ad-hoc 生成ipa包
2.简单的了解xcodebuild 命令
用iTerm2 或者系统的命令工具 将目录指定到一个xcode工程里,然后
man xcodebuild
我们可以看到很详细的使用方法和举例。
3.开始尝试
清理工程缓存
xcodebuild clean -workspace name.xcworkspace -scheme name -configuration Release -quiet
-workspace name.xcworkspace
就是打开工程的名字
-scheme schemename 使用了cocoapod管理需要指定哪一个scheme,可以使用
xcodebuild -list
查看当前的schemes,一般和工程名一样。
-configuration Release 针对何种版本,Release or Debug
-quiet 不想查看冗长的控制台信息,只看警告和错误。
archive工程
xcodebuild archive --workspace name.xcworkspace -scheme name -archivePath testarchive.xcarchive -quiet
-archive testarchive.xcarchive 这边是指定archive的文件路径,当我们导出的时候需要这个文件
导出archive,生成ipa包
xcodebuild -exportArchive -archivePath testarchive.xcarchive -exportPath ipa_path -exportOptionsPlist ${plist_dir} -quiet
-exportPath 指定一个存放ipa的目录
-exportOptionsPlist 指定一个Plist文件,用于区分打包的内容比如
<?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>uploadBitcode</key>
<false/>
<key>compileBitcode</key>
<false/>
<key>method</key>
<string>ad-hoc</string>
</dict>
</plist>
这个Plist文件指定导出为ad-hoc类型,不编辑上传Bitcode.
Xcode9以前可以手动编辑Plist作为配置文件,Xcode9可以手动export工程,在工程文件夹里包含了一个Plist文件,引用这个文件的配置就行了。Xcode9的提交流程中多了一些步骤,所以自然Plist里面也要多一些参数。有兴趣可以自己查看多了哪些参数。
以上三部基本上可以给测试使用了,如果需要更加定制的操作,还要对xcodebuild进行探索,或者使用其他脚本工具。
脚本需要给出执行权限
chmod 777 AutoPackage.sh