mac + android studio + ionic
ionic build apk
ionic platform add android --生成android平台(貌似第一次生成比较久)
ionic resources [--splash] [--icon] --自动创建图标和启动画面屏幕, 将图片放在项目里的resources文件夹里
文件类型包括.png .ai .psd, 例如icon.png
ionic build [--release] [--debug] android --创建release/debug版的apk, 若最终发布的话请使用release版,
release版没有签名, 可自行签名, 而debug版本的都使用了debug用户
签名, 带来后续诸多不便
简单几步就可以创建了一个apk, 但在具体使用中还是遇到问题, 例如本人的mac遇到
"cordova-plugin-crosswalk-webview" 插件问题, 需要删除重新安装才行
ionic plugin rm cordova-plugin-crosswalk-webview
ionic plugin add cordova-plugin-crosswalk-webview
再删除android平台再重新生成
ionic platfrom rm android
ionic platfrom add android
apk sign
1) 生成密钥
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
2) apk签名
echo -n "pkxGB2>TjA9rQ?ucdP" | jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore demo.keystore *arm*.apk demo.keystore
3) 4字节对齐, 优化apk
zipalign -v 4 android-armv7-release-unsigned.apk wei_trade2.apk
Android SDK中包含一个工具Zipalign, 可以优化apk, apk其实就是一个Zip压缩文件, 通过Zipalign可以使apk运行速度更快
例如 本机位置: /Users/xxxx/Library/Android/sdk/build-tools/25.0.1/zipalign
添加到环境变量, 例如添加到zshrc
vim ~/.zshrc
export PATH="/Users/shadow/Library/Android/sdk/build-tools/25.0.1:$PATH"
source ~/.zshrc
3) 查询apk签名
jarsigner -verify -verbose -certs wei_trade2.apk
zipalign包含在Android SDK里面, 例如本机在/Android/sdk/build-tools/25.0.1/
ps
1) 已开始拿debug版本的apk签名, 显示是成功了, 但装不上, 解压apk一看, 出现错误和警告,
后来才知道debug版本apk在生成时已经被签名, 所以生成release版本的就没有此问题
2) apk是个zip文件, 所以可以用zip或者7za解压查看的
7za x demo.apk