e-works数字化企业网  »  文章频道  »  基础信息化  »  移动应用

iOS 自动打包实践(企业APP上传到自己服务器)

2017/6/9    来源:移动互联网第一平台    作者:佚名      
关键字:移动应用  企业APP  
公司使用企业账号发布app到自己服务器,每天必须发布一个app包,几乎每天在打包上面就得至少半个钟头,而每天下午都得开会30分钟...
    公司使用企业账号发布app到自己服务器,每天必须发布一个app包,几乎每天在打包上面就得至少半个钟头,而每天下午都得开会30分钟,于是就想充分利用这时间,在开会前在输入终端命令,执行脚本文件实现自动打包,并且上传到自己服务器。这样开完会就已经自动打包完成。早点下班回家!本文参考是参考:iOS自动打包并发布脚本的实践
 
    使用苹果自带的工具xcodebuild和xcrun打包签名
 
    打开Mac终端,输入命令 man xcodebuild ,man xcrun查看使用方法。
 
 iOS 自动打包实践(企业账号APP上传到自己服务器)
 
    xcrun.png
 
iOS 自动打包实践(企业账号APP上传到自己服务器)
 
    在项目的根目录输入以下命令:xcodebuild -workspace leapParent.xcworkspace -scheme leapParent-configuration Release,我使用的是cocoapods管理的项目所以使用第一张图的第三种方式build,成功之后如下:
 

iOS 自动打包实践(企业账号APP上传到自己服务器)

 
    此时在./Build/Release-iphoneos文件夹下会有leapParent的文件。紧接着输入:xcrun -sdk iphoneos -v PackageApplication /Users/romance/Desktop/CQCoder/CloudClassroom_iOS/Build/Products/Release-iphoneos/leapParent.app -o ~/Desktop/leapParent.ipa;其中-o ~/Desktop/leapParent.ipa:代表项目打包输出的路径,/Users/romance/Desktop/CQCoder/CloudClassroom_iOS/Build/Products/Release-iphoneos/leapParent.app这个是上一步骤xcodebuild成功之后.app的绝对路径
 
    使用python脚本实现的自动打包(原理就是将2的内容用python写好,然后传入参数,执行脚本)将autobuild.py,放入项目的根目录,然后执行python ./autobuild.py -w leapParent.xcworkspace -s leapParent -o ~/Desktop/leapParent.ipa命令,此时可能报错:ImportError: No module named requests此时输入以下命令就可以解决问题sudo easy_install -U requests其中autobuild.py有这几项需要配置下:
 
    CODE_SIGN_IDENTITY = "iPhone Distribution: xxxxxxxx Co. Ltd (xxxxxxx9A)" PROVISIONING_PROFILE = "xxxxxxxxxx-xxxxx-xxxxx-xxxx-xxxxxxxxxxxx" CONFIGURATION = "Release" SDK = "iphoneos"
 
    其中CODE_SIGN_IDENTITY获取方式:
 
iOS 自动打包实践(企业账号APP上传到自己服务器)
 
    CODE_SIGN_IDENTITY.png
 
    PROVISIONING_PROFILE获取方式:
 
iOS 自动打包实践(企业账号APP上传到自己服务器)
 
    provisionfile.png
 
    至此,就大功告成了!但还没做上传到自己服务器,但这个也容易叫后台人员添加一个接口,配置autobuild.py文件就可以了。
 
    2016-10-17 星期一一个上午配置完成,以此纪念自己的学习之路!加油共勉 !
 
    2016-10-24跟新内容
 
    添加app打包完成后自动上传到upyun服务器
 
    这步骤相对简单,参考upyun的Python SDK官方文档将上传方法添加到脚本文件就可以了(温馨提示下:python文件不要用xcode打开编辑,使用sublime就行,因为tab键为4个空格,不符合python语法,执行脚本文件会出错)
 

iOS 自动打包实践(企业账号APP上传到自己服务器)

 
    我使用的是断点续传:
 
iOS 自动打包实践(企业账号APP上传到自己服务器)
 
责任编辑:吴丽萍
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐