美文网首页iOS开发新发现iOSer 干货部落iOS--开发技巧
【iOS打ipa包】:使用终端实现自动打包

【iOS打ipa包】:使用终端实现自动打包

作者: LeeJay | 来源:发表于2016-10-10 17:20 被阅读2855次

    前言

    最近项目要测试,要不停的为产品和测试等人员打包。然而打包这个过程是非常无聊的,每天重复好几次,非常麻烦,所以打包成了一件费时费力的工作。

    这里提供一种比较简单方便的打包方式来减少打包带来的时间,三句命令行解决打包问题。

    本文实现的是使用终端打 Ad-hoc 包,并发布测试。

    正文

    通常打包采用xcodebuildxcrun两个命令,xcodebuild负责编译,xcrun负责将 app 打成 ipa 。

    xcodebuild : 通过工程文件,生成 app 文件。
    xcrun : 通过 app 文件,来生成 ipa 文件。(包含了签名的过程)

    打包步骤

    1. 使用xcodebuild命令打包成 .app 文件这里以我们的 DemoTest 为例。打开终端, cd 到工程文件夹下。(注意:下文中全部以 DemoTest 为例,实际应用时,请替换
    cd /Users/xxx/DemoTest
    
    • 继续在终端输入下面命令行并执行:
    xcodebuild -project DemoTest.xcodeproj -target DemoTest -configuration Release
    

    编译成功会看到终端输出 Bulid Success 。


    终端

    工程目录下会多出一个 build 文件夹, build 文件夹下有一个 DemoTest 的 .app 。


    build文件夹

    实际上我们直接使用 Xcode 编译工程之后也会在模拟器对应的沙盒路径下生成 .app 文件。

    • 把 app 文件打包为 ipa 文件,在终端输入下面命令行并执行:
    xcrun -sdk iphoneos -v PackageApplication ./build/Release-iphoneos/DemoTest.app -o ~/Desktop/DemoTest.ipa
    

    说明:-v 对应的是 .app 文件的相对路径, –o 对应 ipa 文件保存的路径和文件名。这里直接放在桌面了。

    完成之后你就可以看到桌面自动生成了 ipa 包,是不是炒鸡简单,我们可以把此 ipa 包上传到 Fir 或者蒲公英的应用测试平台上,产品和测试人员就可以通过手机扫描二维码进行下载安装,非常方便!


    ipa

    最后

    文中如果有错误的地方,还请大神指正。或者有更好和简单的方法,我们可以一起交流。

    相关文章

      网友评论

      • LeeDev:adhoc ,是根据什么来判断的,
      • 中秋梧桐语:执行第一个命令报错 xcodebuild -project DemoTest.xcodeproj -target DemoTest -configuration Release
        醉雨清风:@夜聆纞尐珊 是的,是这个原因,这里你应该用xcodebuild -workspace "DemoTest.xcworkspace" -scheme "DemoTest" -configuration "Release"
        中秋梧桐语:@LeeJay 有替换的,我用了cocoapods,是不是因为这原因?
        LeeJay:@夜聆纞尐珊 你好,请把 DemoTest.xcodeproj 这个替换成你项目的名称,要仔细阅读文章哦:smiley:
      • hdeyiji:我的不知道为什么打包为 ipa 文件会报错!
        LeeJay:@hdeyiji :relaxed:
        hdeyiji:@LeeJay 恩!这个我知道的!年前,我没有拷贝一份,搞坏了我的~~~就么有试了!有时间再试一次
        LeeJay:@hdeyiji 文中的命令行都是以DemoTest为例,你要替换成你自己的项目哦。检查下
      • Eddiegooo:可以可以 学习了
      • sineboy:fastlane和jkens哪个好用啊
      • wsj2012:我用fastlane 一行命令 直接自动发布到appstore 或者testfight
        大牛在郑州:@wsj2012 企业账户能用fastlane么,为什么我login账号失败
        wsj2012:@LeeJay git上搜索 fastlane
        LeeJay:@wsj2012 求分享
      • minjing_lin:鼓励一下
        LeeJay:@MinJing_Lin :+1:

      本文标题:【iOS打ipa包】:使用终端实现自动打包

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