iOS 码农 偷懒记录

2017-11-03 15:52:16 28点赞 158收藏 35评论

作为一个程序猿, 我们大部分情况下不是这样

iOS 码农 偷懒记录

更没有这样

iOS 码农 偷懒记录

偶尔会这样

iOS 码农 偷懒记录

最期望这样

iOS 码农 偷懒记录

在自己眼里永远是最帅的这样

iOS 码农 偷懒记录

怎么保证我们时时刻刻都这么帅,那就得想办法偷懒啊,不是真的偷懒,是让电脑去帮我们干我不想去干而电脑能处理的事.下面全是iOS程序猿可能会了解到的东西,其他猿类请绕行......

做前端的你是不是遇到过测试同学过来找你,那谁谁,给我打一个测试环境的包,过一会儿,给我打一个线上环境的包,或者做后端的同学要联调自己的接口找你要一个他本地环境的包,怎么办........你还在写一个未完成的功能.......哦,别着急下边先教你解决QA的事儿........

一个iOS程序可能需要用到Xcode(必备),jenkins/Xcode server,对应APPID下的证书,最少是这些......

iOS 码农 偷懒记录

安装好相应的工具,Xcode需要ExportOptions.plist文件,可以用Xcode archive导出一份,放到工程根目录下边就行了iOS 码农 偷懒记录

我这是jenkins目录下边看到的导出来的包和多出来的token文件,ipa_build是自己写的脚本,双击就可打包,也十分方便
iOS 码农 偷懒记录

自己写的本地打包脚本,添加了可执行权限,直接双击运行,然后就等着桌面上自己出来一个ipa文件

iOS 码农 偷懒记录

下载jenkins,我的直接在下载文件夹,你可以换地方,也可以下载PKG文件直接安装,

iOS 码农 偷懒记录

运行jenkins,我是用的命令行

iOS 码农 偷懒记录

安装完了jenkins,开始配置,既然是教你偷懒,当然能不干的就不干

iOS 码农 偷懒记录

这里只需要安装插件,github的或者gitlab,其他一概不用管

iOS 码农 偷懒记录

我的是配置完了,新安装的没有右边的工程,需要你新建

iOS 码农 偷懒记录

新建一个工程

iOS 码农 偷懒记录

进去之后只需要配置https的链接然后点下边add输入用户名密码(这种方式最省事)

iOS 码农 偷懒记录

如果不报错的话进行下一步,添加脚本,脚本可以自己写,也可以用网上的,但是为了偷懒,就需要轮子

iOS 码农 偷懒记录

可能用到下边三个轮子:

JQ,解析JSON用的shell命令行工具

GitHub - stedolan/jq: Command-line JSON processorjq - Command-line JSON processorgithub.com去看看

fir,打包,上传

GitHub - FIRHQ/fir-cli: fir.im command-line interfacefir-cli - fir.im command-line interfacegithub.com去看看

fastlane,打包,发版,上传AppStore.......可以有很多操作,功能十分强大

GitHub - fastlane/fastlane: fastlane - github.com去看看

添加自己的打包命令,然后这一摊事儿就不用自己管了,打包完了会自动发送企业微信提醒所有人去下载新的测试包

iOS 码农 偷懒记录

命令行解析

1: fastlane gym --export_method ad-hoc --output_name (你自己的工程名) --clean


这一步是用fastlane清理并打包,纯粹为了省事,打包后ipa地址在工程根目录,反正是在jenkins目录下边


2: curl -F "file=@$WORKSPACE/(你自己的工程名).ipa" -F "uKey=(蒲公英的key)" -F "_api_key=(蒲公英的key)" https://www.pgyer.com/apiv1/app/upload

这一步是上传到蒲公英,Curl命令执行的操作,后边还有两处Curl发起请求的命令

或者上传fir

fir login ${fir_token}

fir me

fir publish "$WORKSPACE/(工程名).ipa"

这个就需要上传fir了


3: curl -o token.txt -s https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=(你的企业微信id)&corpsecret=(你的企业微信密匙)


这一步是为了让jenkins打包完了在企业微信通知相应的人而获取企业微信的token,curl发起一个get请 求拿到一个JSON的字符串,为了自己能看到都是啥字段,让它写入到了一个token.txt文件中.


token=$(cat token.txt |jq -r '.access_token')


这一步是用JQ解析JSON,cat命令读取token.txt,JQ解析access_token,并且生成一个名字叫token的参数

echo "这里是一个文件的内容 $token"


然后打印了一下,看看是不是我想要的..........还有最后一步


4: curl -H "Content-Type: application/json" -X POST -d '{"touser" : "","toparty" : "(需要给哪个群组的人发)","totag" : "","msgtype" : "text","agentid" : 1000003,"text" : {"content" : "i测试包'$bundle_version'版本已于'$current_data'打包成功,下载地址点击跳转蒲公英下载。"},"safe":0}' https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$token


curl发起一个Post请求发送一个群组的提醒到企业微信提醒某些人去下载最新的测试包. iOS 码农 偷懒记录

企业微信相应的API在这看

开发文档 - 企业微信企业微信提供了通讯录同步、应用管理、消息推送、OAuth2用户身份识别、JS-SDK等API,开发者可以使用这些API,为企业接入更多个性化的办公应用work.weixin.qq.com去看看

最后解决一下环境问题,我在判断Debug的情况下添加了一个可选环境的页面,Release环境是看不到的


iOS 码农 偷懒记录

可以自己选线上生产环境或者本地某些人的自建地址等等,点击自动切换,清空登录信息缓存
iOS 码农 偷懒记录

终于解决了问题可以偷懒了,然鹅,会

iOS 码农 偷懒记录

iOS 码农 偷懒记录

就怕改需求啊...........

最后程序猿成了香饽饽,能让大妈看上真不容易..........

iOS 码农 偷懒记录

iOS 码农 偷懒记录

至于为啥吃香,就是下边的原因吧

iOS 码农 偷懒记录

抽空写了一个这个,请各位猿类疯狂的打call吧,我要去码了.........

展开 收起

GitHub - fastlane/fastlane:

GitHub - fastlane/fastlane:

暂无报价 去购买

GitHub - FIRHQ/fir-cli: fir.im command-line interface

GitHub - FIRHQ/fir-cli: fir.im command-line interface

暂无报价 去购买

GitHub - stedolan/jq: Command-line JSON processor

GitHub - stedolan/jq: Command-line JSON processor

暂无报价 去购买

开发文档 - 企业微信

开发文档 - 企业微信

暂无报价 去购买

Apple 苹果 iPhone 11系列 A2223 4G手机

Apple 苹果 iPhone 11系列 A2223 4G手机

1699元起

Apple 苹果 iPhone 13系列 A2634 5G手机

Apple 苹果 iPhone 13系列 A2634 5G手机

3580.51元起

Apple 苹果 iPhone 14 Pro Max 5G手机

Apple 苹果 iPhone 14 Pro Max 5G手机

3999元起

Apple 苹果 iPhone 14 Pro系列 A2892 5G手机

Apple 苹果 iPhone 14 Pro系列 A2892 5G手机

5308元起

Apple 苹果 iPhone 14系列 A2884 5G手机

Apple 苹果 iPhone 14系列 A2884 5G手机

4129元起

Apple 苹果 iPhone 12系列 A2404 5G手机

Apple 苹果 iPhone 12系列 A2404 5G手机

3199元起

Apple 苹果 iPhone XR 4G手机

Apple 苹果 iPhone XR 4G手机

1939元起

Apple 苹果 iPhone 13 Pro系列 A2639国行版 5G手机

Apple 苹果 iPhone 13 Pro系列 A2639国行版 5G手机

4499元起

Apple 苹果 iPhone 15 Pro Max 5G手机

Apple 苹果 iPhone 15 Pro Max 5G手机

7699元起

Apple 苹果 iPhone 15 Pro 5G手机

Apple 苹果 iPhone 15 Pro 5G手机

5699元起

Apple 苹果 iPhone 15 5G手机

Apple 苹果 iPhone 15 5G手机

4580元起

Apple 苹果 iPhone 14 Plus系列 A2888 5G手机

Apple 苹果 iPhone 14 Plus系列 A2888 5G手机

4899元起

Apple 苹果 iPhone 13 Pro Max系列 A2644国行版 5G手机

Apple 苹果 iPhone 13 Pro Max系列 A2644国行版 5G手机

5650元起

Apple 苹果 iPhone X 4G手机

Apple 苹果 iPhone X 4G手机

6868元起

Apple 苹果 iPhone XS Max 4G手机

Apple 苹果 iPhone XS Max 4G手机

5099元起

Apple 苹果 iPhone 8 Plus 4G手机

Apple 苹果 iPhone 8 Plus 4G手机

3249元起
35评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
158
扫一下,分享更方便,购买更轻松