Ionic2提供build和run命令,这种情况生成的apk都是通过其自带debug签名,要生成自己签名的apk,步骤如下
- 创建keystore
需要用到JDK /bin目录下的keytool工具,Mac下路径为/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
,如果找不到路径,可以打开系统偏好设置里的Java控制面板,查看高级菜单。
打开终端,cd该路径,输入命令
keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore
-genkey 产生密钥
-alias demo.keystore 别名 demo.keystore
-keyalg RSA 使用RSA算法对签名加密
-validity 40000 有效期限4000天
-keystore demo.keystore - apk签名
这里有两种方案,一个是通过jarsigner工具,另一个是通过Ionic自动签名。这里笔者使用第二种。
在项目的/platforms/android/目录下新建release-signing.properties
文件,添加内容:
storeFile=path/to/keystore keyAlias=your key aliasstore Password=your store passwordkey Password=your key password
项目路径下运行ionic build android --release
,ionic会自动读取该文件的配置去进行签名,mac编译过程会弹出输入password的框。编译通过后apk在/platforms/android/build/outputs/apk/android-release.apk