批量打包-- ipa

来源:互联网 发布:edius视频编辑软件 编辑:程序博客网 时间:2024/05/19 04:52

      公司最近的项目是 app工厂,目的就是让不懂程序的人,直接可视化的拖动,然后上传必要的资料,就可以拥有一款自己的app。这不禁让我想起了,当年我读大学的时候,正好是中兴的企业老师,想我们展示的安卓批量工厂,那个时候觉得好高大上啊!原来不懂程序的人都可以制作一款自己的移动软件。但是!!: 凡是用户看起来简单的操作,对于技术来说,都是很头痛的。尤其是要考虑到每个模块之间的耦合性!好了,话不多说了。

     对于ios来说,批量打包主要是利用了 xcodebuild 和  xcrun。 

xcodebuild负责将工程源文件编译成xxx.app

xcrun负责给xxx.app(签名并)打包成xxx.ipa


1:在终端上进入项目工程的目录。(在xxx.xcodeproj所在的目录)

2:输入命令   /usr/bin/xcodebuild -target ”targetName“ clean  ( targetName 就是项目的名称)

3:  /usr/bin/xcodebuild -target targetName

4:  /usr/bin/xcrun -sdk iphoneos PackageApplication -v  源app路径 -o 输出的ipa路径


当然 xcodebuild 和xcrun还可以给app签名。

  1. xcodebuild -target targetName CODE_SIGN_IDENTITY="iPhone Distribution:XXXXXX"  
  2. xcrun -sdk iphoneos PackageApplication -v 源app路径 -o 输出的ipa路径 --sign "iPhone Distribution:XXXXXX" 

好了 ,到这里 你就可以使用命令来打包了。

下面提供一个sh文件,批量打包多个渠道ipa包。将其直接拖往终端即可运行。

#!/bin/shCONFIG_ROOT_PATH="/Users/macmini04/Desktop/工程路径/"cd $CONFIG_ROOT_PATH#循环数组CHANNELID=("aaa" "bbb" "ccc")CHANNEL_SECRET=("111" "222" "333")for ((i=0;i<${#CHANNELID[@]};i++))do#删除rm -rf "/Users/macmini04/Desktop/工程路径下(使用xcodebulid会在这个路径下生成一个build文件夹)/build/"#清除  xcodebuild -target 生成app的文件名称 clean    echo ${CHANNELID[$i]}    echo ${CHANNEL_SECRET[$i]}    #修改plist    /usr/libexec/PlistBuddy -c "set :CHANNELID ${CHANNELID[$i]}" /Users/macmini04/Desktop/..工程路径/生成app的文件名称/AppConfig.plist    /usr/libexec/PlistBuddy -c "set :CHANNEL_SECRET ${CHANNEL_SECRET[$i]}" /Users/macmini04/Desktop/..工程路径/生成app的文件名称/AppConfig.plist    #打包    xcodebuild -target 生成app的文件名称 -configuration Distribution -sdk iphoneos build    #生成ipa    xcrun -sdk iphoneos PackageApplication -v "/Users/macmini04/Desktop/..工程路径/build/Release-iphoneos/XXX.app" -o "/Users/macmini04/Desktop/..工程路径/生成ipa的名称_${CHANNELID[$i]}.ipa"done

服务器打包环境 的需要是Mac系统,装有xcode集成IDE

参考其他:http://www.cnblogs.com/brycezhang/p/4097487.html
http://lizaochengwen.iteye.com/blog/1856698

0 0