ionic2的打包,从调试到发布 --Android

以下内容的前提是ionic2得环境搭建好,包括SDK

  1. 下载android platform
  2. 有两种模式,一种是debug,一种是release
  3. 如何生成签名
  4. 如何自动签名
  5. --prod的优化启动速度

1.添加Android平台支持

  1. 在工程目录下执行 ionic platform add android 命令
    项目的路径下就会自动生成platform文件夹,里面有一个android文件夹。
    添加Android平台支持后就可以打包apk了
  2. 在工程目录下执行 ionic build android 命令
    会在 xxx\platforms\android\build\outputs\apk下生成android-debug.apk
    这种命令生成的apk是用于调试的。
  3. 安装到手机
    连接手机或者打开模拟器,在xxx\platforms\android\build\outputs\apk下打开命令窗口执行adb install android-debug.apk就能将apk安装在手机或者模拟器上了。

2.两种打包的版本

一种是debug调试版,一种是release发布版

  1. 打包debug调试版
    在工程目录下执行ionic build android,生成的apk就是debug调试版本
  2. 打包release发布版
    在工程目录下执行ionic build andorid --release,生成的apk就是release发布版本。
    如果没有配置签名文件则默认只生成android-release-unsigned.apk,没有签名的apk。release版本是必须有签名才能在手机上运行。

3.生成签名文件

有两种方式生成签名文件
1.使用Android Studio

ionic2的打包,从调试到发布 --Android_第1张图片
build.jpg
ionic2的打包,从调试到发布 --Android_第2张图片
Genetate Signed APK.jpg
ionic2的打包,从调试到发布 --Android_第3张图片
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是别名,也是自定义的。

ionic2的打包,从调试到发布 --Android_第4张图片
生成签名.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下的目录分隔符/。

参考文章:
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 --prod 6s 6s、5s 没测
--release 4.5s 12s 13s
--release --prod 5s、4.5s 5s 5s

ionic2打包的项目都是需要启动这么久的吗?你们是这样的吗?希望路过的大神指引一下小菜鸟。


好好学习,天天向上。<( ̄oo, ̄)/


ionic2的打包,从调试到发布 --Android_第5张图片
Potato_zero.jpg

你可能感兴趣的:(ionic2的打包,从调试到发布 --Android)