以下内容的前提是ionic2得环境搭建好,包括SDK
下载android platform
有两种模式,一种是debug,一种是release
如何生成签名
如何自动签名
--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生成签名文件
生成签名文件的命令:
keytool -genkey -v -keystore name.jks -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
name.jks,name可以自定义,jks是Android studio生成的签名文件的后缀,这里默认使用jks也可以;
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
使用ionic build android --release编译即可,在/platforms/android/build/outputs/apk下就会生成已签名的安装包android-release.apk
在windows下storeFile文件路径应使用Unix下的目录分隔符/。
5.--prod的优化启动速度
这个是在ionic2的QQ群里面大神说的
在编译命令的最后加上--prod会让app的启动速度加快。
ionic build android --release --prod
无论是debug版本还是release版本都适用。
经过几次测试后得到的启动时间数据:
打包命令
Genymotion模拟器 6.0
华为4C 5.1
三星平板 4.4.2
--debug --prod
6s
6s、5s
没测
--release
4.5s
12s
13s
--release --prod
5s、4.5s
5s
5s
ionic2打包的项目都是需要启动这么久的吗?你们是这样的吗?希望路过的大神指引一下小菜鸟。
好好学习,天天向上。
Potato_zero.jpg