2

Fastlane自动上传beta包遇到的一些坑

 2 years ago
source link: http://blogbo.org/2018/07/08/fastlane%20integrated/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
四公子的剑

This is my site, welcome you!

Fastlane自动上传beta包遇到的一些坑

之前都是在Xcode里手动打包,虽然方便但是有些繁琐,而且还不能起身去喝杯咖啡,吹个牛,哈哈哈。本来是直接想让测试和后端对接下,搭建一套 jikens 持续集成环境,怎奈,后端环境一直没搞好,就搁置了。没办法,那只能客户端自己来搞了,毕竟能自动化点是点(摊手)~

Fastlane相信做移动开发的都不会陌生,非常有名的自动化打包集成工具,和Cocopods一样都是用Ruby开发的,而且Mac自带gem环境(当然,肯定得升级)原生支持ruby,美滋滋。不过gem的sources源得换成国内的,否则安装时会出现超时的情况,即使你有墙外全局代理也建议更换成国内的源镜像。工具的安装就不赘述了,官网有详细的setup步骤,这里说下从写好一个lane,也就是一个任务action到打好包然后上传testflight后台的问题,首先写好lane,我这里因为要做两个事情,一个是打好ipa,第二是自动上传到AppStore Connect的测试后台,命名为”beta”,具体的lane命令如下:

进入项目根目录,执行fastlane beta,开始build,xcode本身编译没问题,这里的编译应该也没什么问题,成功archive出ipa包后,问题出现在「upload_to_testflight」这一步:

目前Apple为了安全,Apple develop account 都需要强制开启两步验证,也为此带来了一些账号操作上的麻烦。这里根据报错提示,意思是需要一个特定的 application 专用密码,刚开始很奇怪,不知道表达的是什么意思,输入了账号登陆密码尝试,一直不通过,后来无奈只能到 Apple id 账号信息里去找相关,在安全选项里确实有这么个东西,手动生成了一个所谓的”专用密码”,然后保存下来,输入命令行,继续执行上传流程,终于一切顺利,大功告成!:

但是,但是,事情还没有结束,当其他同事在提交新功能,准备构建新版测试包时,同样的问题又复现了。what?不是都已经有”专用密码”了嘛,怎么提示不对了?一脸懵圈,没办法,只能让同事在他自己的电脑上重新再生成一遍,然后继续,流程成功执行了下去。
这时候才知道原来”application专用密码”需要每个人在自己的机器环境上各自生成,然后保存,供后续使用,无法只生成一个分发通用,真是一个字:坑!

分享这次上传beta包到后台,遇到的问题,供以后的朋友查阅和借鉴,避免浪费不必要时间和精力。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK