以下内容的前提是ionic2得环境搭建好,包括SDK
1、下载android platform
2、有两种模式,一种是debug,一种是release
3、如何生成签名
4、如何自动签名
5、--prod的优化启动速度
1.添加Android平台支持
在工程目录下执行ionic platform add android命令
项目的路径下就会自动生成platform文件夹,里面有一个android文件夹。
添加Android平台支持后就可以打包apk了
在工程目录下执行ionic build android命令
会在xxx\platforms\android\build\outputs\apk下生成android-debug.apk
这种命令生成的apk是用于调试的。
安装到手机
连接手机或者打开模拟器,在xxx\platforms\android\build\outputs\apk下打开命令窗口执行adb install android-debug.apk就能将apk安装在手机或者模拟器上了。
2.两种打包的版本
一种是debug调试版,一种是release发布版
打包debug调试版
在工程目录下执行ionic build android,生成的apk就是debug调试版本
打包release发布版
在工程目录下执行ionic build andorid --release,生成的apk就是release发布版本。
如果没有配置签名文件则默认只生成android-release-unsigned.apk,没有签名的apk。release版本是必须有签名才能在手机上运行。
3.生成签名文件
有两种方式生成签名文件
1.使用Android Studio
build.jpg
Genetate Signed APK.jpg
New Key Store.jpg
2.使用jdk的KeyTool生成签名文件
生成签名文件的命令:(.jks 可以改为 .keystore)
keytool -genkey -v -keystore name.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
name.keystore,name可以自定义
alias_name是别名,也是自定义的。
生成签名.jpg
注意注意:
问是否正确的时候要回答中文'是',一开始傻乎乎回答'yes'结果没反应
4.如何打包的时候自动签名
在工程目录/platforms/android目录新建名为release-signing.properties的文件,文件内容如下
storeFile=path to keystore
keyAlias=your key alias
storePassword=your store password
keyPassword=you key password
(例如:PS:keystroe文件 跟 release-signing.properties文件在同一级
storeFile=./name.keystore
keyAlias=name.keystore
storePassword=123456
keyPassword=123456
)
使用ionic build android --release编译即可,在/platforms/android/build/outputs/apk下就会生成已签名的安装包android-release.apk
在windows下storeFile文件路径应使用Unix下的目录分隔符/。
参考文章:
http://www.jianshu.com/p/0588510fbb97
5.--prod的优化启动速度
这个是在ionic2的QQ群里面大神说的
在编译命令的最后加上--prod会让app的启动速度加快。
ionic build android --release --prod
无论是debug版本还是release版本都适用。
经过几次测试后得到的启动时间数据:
打包命令Genymotion模拟器 6.0华为4C 5.1三星平板 4.4.2
--debug --prod6s6s、5s没测
--release4.5s12s13s
--release --prod5s、4.5s5s5s
转自:
作者:欢乐的乐
链接:http://www.jianshu.com/p/dfd98ad47af1