美文网首页常用技术收集iOS技术专题iOS开发记录
最浅显易懂的iOS自动化打包(1)

最浅显易懂的iOS自动化打包(1)

作者: 陈怀哲 | 来源:发表于2016-03-10 23:01 被阅读919次

    打包打多了,就会开始觉得这重复的工作有些耗时间,而且效率低。我们需要自动化打包。

    演示

    先直接举一个例子吧。

    我本地有一个工程,CYAVPlayer

    打开终端,运行脚本

    $ cd /Users/cy/CYAVPlayer 
    $ chmod 777 /Users/cy/package.sh 
    $ /Users/cy/package.sh
    

    解释一下这三行命令:

    • 打开工程目录
    • 获得脚本权限
    • 执行脚本

    最后终端中会出现一大串代码,从中可以看到打包成功、导出成功、上传到fir成功的提醒。最后终端中大概是这个样子的:


    屏幕快照 2016-03-10 22.29.28.png

    在原来的文件夹,可以看到多了一个build文件夹,里面是我们打包好的ipa。

    build ipa

    我到fir我的应用管理下面,就会看到,应用已经传上去了。

    fir里的应用显示

    脚本

    来看我们的脚本里面的内容:

    xcodebuild -project CCYYAVPlayer.xcodeproj -scheme CCYYAVPlayer archive -archivePath ./build/CCYYAVPlayer.xcarchive && \
    rm -rf ./build/CCYYAVPlayer.ipa && \
    xcodebuild -exportArchive -exportFormat ipa -archivePath build/CCYYAVPlayer.xcarchive -exportPath build/CCYYAVPlayer.ipa && \
    fir p build/CCYYAVPlayer.ipa -T XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    

    这里有脚本的链接,package.sh
    也可以直接复制脚本内容到终端运行。需要注意的是:

    • 将CCYYAVPlayer改成你工程的名字
    • 最后的XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX这个是fir(fir.im是一个做内测分发的网站)的API Token,相当于是上传到fir你的账号下的密钥。

    点击这里可以获取:API Token

    如果你不需要上传到fir,在脚本中去掉下面的代码:

     && \
    fir p build/CCYYAVPlayer.ipa -T XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    

    如果你的工程有workspace,脚本应该是这样的:

    xcodebuild -workspace CCYYAVPlayer.xcworkspace -scheme CCYYAVPlayer archive -archivePath ./build/CCYYAVPlayer.xcarchive && \
    rm -rf ./build/CCYYAVPlayer.ipa && \
    xcodebuild -exportArchive -exportFormat ipa -archivePath build/CCYYAVPlayer.xcarchive -exportPath build/CCYYAVPlayer.ipa && \
    fir p build/CCYYAVPlayer.ipa -T XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    

    相关文章

      网友评论

      • 沙漠骑士:The following build commands failed:
        Check dependencies
        (1 failure),这个是什么原因呢?是不是有什么依赖
      • 动感超人丶:为什么打出的包,安装不上呢?
      • 焚琴煮鹤de我:这个没法指定打包的版本的?不是有adhoc包,develop包,store包
        陈怀哲:@焚琴煮鹤de我 是的,这个脚本里没有
      • 被吹落的风:User defaults from command line:
        IDEArchivePathOverride = /Users/jason/Desktop/New/YouFeel/build/YouFeel.xcarchive

        xcodebuild: error: 'YouFeel.xcworkspace' does not exist.

        这是什么意思??
        被吹落的风:@9f2e536b78fd 现在是可以打包成功了,就是自动上传fir.im失败了
        被吹落的风:@9f2e536b78fd 可是.xcworkspace和.workspace都在我打开的文件目录下啊,很奇怪什么原因。。
        陈怀哲:@6a4f4d27034d 就是说你这个路径下没有.xcworkspace工程文件,所以不能准确的打包,你要把.workspace文件放在你打开的文件夹的根目录下

      本文标题:最浅显易懂的iOS自动化打包(1)

      本文链接:https://www.haomeiwen.com/subject/vbitlttx.html