IPHONE 自动编译系统

来源:互联网 发布:淘宝严查沙河货 编辑:程序博客网 时间:2024/04/27 18:21

1.从SVN获取代码

2.检测SVN有更新,再10分钟后,自动编译,如果出错发邮件通知。

3.程序某个值是SVN的版本号

4.上传到FTP的特定位置,方便其他人下载。


以上为设想。

然后一步一步实现。

HUDSON是好东西,XCODEBUILD 很方便。




开始记录HUDSON的使用 MAC的使用

1.下载hudson-2.12.war

2.打开terminal  ,命令: java -jar  hudson-2.12.war     (实际路径)

3.下面就是配置HUDSON

使用的SVN,就配置SVN的路径。然后就是SHELL脚本.


XX.sh  在terminal  中修改权限的命令 chmod +x  build.sh  (从SVN下载下来后的权限就会被改变)



11月4日上午

HUDSON可以上传到FTP,并且配置好了HUDSON的脚本。


11月4日下午

由于我安装了XCODE3 和 XCODE4两个版本,由于先安装的是XCODE3是 ,所以SDK支持 4.1,但默认不支持4.3 ,可以把SDK下面的4.3版本COPY到XCODE3下面,就可以编译了。


HUDSON从SVN的下载后,默认的路径是WORKSPACE 

所以在配置 build.sh中需要加上后面的实际的文件路径。

#!/bin/shecho '---------start-------------------'MYPATH=${PWD#*}echo '----------------------------'echo $MYPATHecho '----------------------------'XXpath="/XX/XX"buildpath=$MYPATH$XXpathcd $buildpathxcodebuild -sdk iphoneos4.3 -project XXX.xcodeproj 

编译这个脚本的时候,遇到了赋值的问题,赋值两侧不能空格。

这两句都可以编译的

xcodebuild -configuration Release

#xcodebuild -sdk iphoneos4.3 -project XXX.xcodeproj 


hudson的FTP插件无法上传到文件夹,因此我选择使用zip 压缩,在上传,OK,成功。在XP上受到这个安装包后,打开一开原来里面的中文名称是乱码???这个得到一个教训,能够用英语的绝对不能用中文,这次也是因为自己英语不好,所以很多SVN的文件是用中文的。


原因是MAC 用的UTF8 但是XP一般用的是GBK,因此解析会出现问题。

同事说可以用GZIP,但是实验后,还是不行。


最后想通过APP 直接打包成IPA的格式

/usr/bin/xcrun -sdk iphoneos PackageApplication -v "${RELEASE_BUILDDIR}/${APPLICATION_NAME}.app" -o "${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa" --sign "${DEVELOPER_NAME}" --embed "${PROVISONING_PROFILE}"

但是这个证书目前还是有问题,在sign中有问题。

终于搞定这个证书的问题了,这个证书就是keychain access 中的我的证书里面的Common Name 后面的字段。

这个编译出来后的版本就可以上传到FTP上了。但是目前的问题就是如何把IPA的文件从临时文件夹中取出来??


终于搞定如何得到IPA目标,只需要指定目录就可以了。

/usr/bin/xcrun -sdk iphoneos PackageApplication -v "build/Release-iphoneos/XX.app" -o "/Users/XX/.hudson/jobs/XXX/workspace/XX/XX.ipa" --sign "iPhone Distribution: XXX" --embed "XXX.mobileprovision"








原创粉丝点击