背景:复宏汉霖APP的CR结束了.今天来打包.记录一下打包流程.Android+ios的打包流程(项目所用技术+自身环境说明:ionic+ Angular + win10系统 + cordova)
第一步:下载需要的安装包
需要下载的安装包:(1):
android studio 最新版(2):
java JDK1.8(3):
gradle 最新版(官网下载)(4):
node 10.16.3(5):
全局安装ionic(不用指定版本,安装最新的就好了) npm install -g ionic
(6):
全局安装cordova 8.0.0 ,命令: npm install -g [email protected]
附上我的前三个的安装包.也可以自行去网上下载.百度网盘(永久有效)
:链接: https://pan.baidu.com/s/1z9ha0jyLw1ABRWEZui0cUQ 提取码: xrnn
第二步:安装,配置环境
gradle
+ java
+ android studio
配置环境变量.自行在网上找环境变量配置教程.......一个个截图太多了..就不截图了...反正就配置下环境变量.有的在系统变量配置有的在用户变量配置.
- 配置结束后.在桌面
(或者任意文件夹下)
运行cmd窗口.执行命令查看环境变量配置是否成功.以下六个命令运行成功后(参考我以下截图)
,版本对上了.就可以进行打包了.(我的框架是ionic的,所以查看了ionic的版本,如果用的不是ionic就不用查看)
第三步:进行打包
- 找到你需要打包的项目文件夹.
- 配置好你需要的环境
一: 打包之前需要更改的配置(4-5个文件)
(非常重要!!,这个配置代表你打包的环境!!):**(我们公司的大平台会给出证书,签名密码,ios key,android key,app key.密钥等.其他公司的不太清楚你们放在哪里...自行寻找哈...)
(1):
config.xml
需要改的id.打安卓的就把-改为下划线_.打ios的改为-.(一定要改,不然会报错!!!)
以及要改的key值(涉及到打包环境)
.
二: 配置好了之后就可以打开命令窗口(最好用管理员身份运行,可以避免N多问题...)
.
- 安卓打包:
1:
执行:ionic cordova platform rm android
(保证平台环境干净)
2:
执行:ionic cordova platform add android
(添加安卓打包平台)
3:
执行:ionic cordova build android
(debug调试环境)
或者ionic cordova build android --prod --release
(正式发版环境)
.以下用正式做练习:
(1):
命令开始执行的时候(4):
出现以下输出语句的时候就代表打包成功了.
BUILD SUCCESSFUL in 49s
46 actionable tasks: 46 executed
Built the following apk(s):
C:\timor\xiaosk_projects\platforms\android\app\build\outputs\apk\release\app-release-unsigned.apk
三: 签名.(签名文件和密码自行找公司相关人员咨询...这里默认签名文件和密码都已拥有...(我们公司的就在自身项目里.没有的找项目负责人要.))
(1):
找到com.xiaosk.henlius_uat.jks
签名文件.复制放在刚刚打包成功的路径C:\timor\xiaosk_projects\platforms\android\app\build\outputs\apk\release
里面.如下图所示:
- 打包成功后会把apk后缀的文件.发送到QQ就可以直接安装先看看安卓打包后的APP了.
- ios打包:
- 必备苹果电脑.可以先在window电脑上打包.后面在苹果电脑上改配置.
(这样就可以安卓的包打完直接打ios的包.方便一些.)
1:
先保证平台的环境干净.运行命令ionic cordova platform rm android
- 把配置好的ipa文件,借助数据线和iTools还有
应用兔
手机软件.到苹果手机上测试.手机上需要安装应用兔
软件.配合使用. - 附上iTools安装链接
(百度云盘,永久有效)
:
链接: https://pan.baidu.com/s/1WWVpWeAtEMHG3ODQFnZHQA 提取码: uz9i
常见报错整理:
(1):
第一种报错信息:
解决方法:
真的是在网上搜索了各种方法.各种命令运行.后面还是没有用...最有用的一篇文章是参考这个文章 但是有个坑是:
1、在node_modules.bin 下的 *.cmd 文件中,有如下 "%_prog%"
2、修改 "%_prog%" 为 %_prog%,即去掉双引号
- 我是怎么搜
node_modules.bin
里面的"%_prog%"
内容都没有搜到.最后我想到.*.cmd 文件
可能代表的是所有后缀为.cmd
的文件.... - 然后随意点开了一个...发现里面真的有
"%_prog%"
....后面没办法...一个个文件点开去把"%_prog%"
内容给替换成了%_prog%
. - 实在是没有找到合适的解决方法了...改了又二十个文件左右....哎...不过好在.我成功解决了......这个问题应该是
npm install
的问题.但是我重新安装了好多次都没办法.
(4):
第四种报错信息:内存泄漏(会经常遇到....)
解决方法:
- 1、删除项目中
node_modules
文件夹 - 2、执行
npm cache clear --force
- 3、
npm install
安装依赖 - 4: 管理员身份全局安装
increase-memory-limit
- 5:
npm install -g increase-memory-limit
- 6: 进入工程目录,执行:
increase-memory-limit
(5):
第五种报错信息:python报错
解决方法:第一步:
安装windows-build-tools : npm install --global --production windows-build-tools
第二步:
安装node-gyp : npm install --global node-gyp
附带的知识点:
1: 关于nrm
安装nrm : npm i -g nrm
nrm ls
查看指向源
2: 优化APK
zipalign -v 4 app-release-unsigned.apk app-release-signed.apk
总结:
内心感受: 今天打包从上午十点出头一直打到晚上九点半.真的非常惨...惨绝人寰...没有经验的小白就是各种踩坑.还好我一直对自己说今天打不好就不下班了.同事也过来帮我看报错..各种出主意.. 最后成功了..一把心酸泪...
遇到问题解决的方法:其实很多问题都是因为运行者的身份权限不够,或者有缓存.版本不正确,步骤不正确导致的.静下心来在网上找找答案.或者开口问问同事.最后还是不行就清空回收站,电脑杀个毒,清理下垃圾.然后关机重启.把运行的进程关掉一大部分.重新再来一次.要相信自己,一定能行.绝不轻言放弃!
打包最重要的三个因素:缓存,内存,网速
- 写这篇文章.
一:
是给自己留下记忆.二:
是分享出来,避免再有人和我一样踩坑.每个项目可能多少有点不同.但是大致思路是一样的.遇到的错误也是大同小异的.有问题的小伙伴可以好好参考.不要忽略了细节哦. - 有问题可以下方留言沟通.基本上每天都会上线.觉得有用的小伙伴记得点个赞~