只是一些项目相关技术的摘录
现在我们已经创建了一个Ionic应用todo(我创建的项目名称是myApp所以我使用的都是myApp这个事没有影响的 ),并且添加android平台模拟器进行测试成功,怎么把它打包成apk文件呢?
一、去掉调试插件
进入todo项目,执行:
cordova plugin rm org.apache.cordova.console//去掉调试插件
cordova plugin rm org .apache .cordova .console //去掉调试插件
二、Android 相关文件修改
1.更改todo目录下的platforms/android/AndroidManifest.xml文件
<application android:debuggable="true" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name">
<application android : debuggable = "true" android : hardwareAccelerated = "true" android : icon = "@drawable/icon" android : label = "@string/app_name" >
把android:debuggable 改为false:
<application android:debuggable="false" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name">
<application android : debuggable = "false" android : hardwareAccelerated = "true" android : icon = "@drawable/icon" android : label = "@string/app_name" >
2.使用Cordova生成发布版本
cordova build --release android
cordova build -- release android
看到Build Successful说明构件成功
3.生成签名key
构件说明中已经提示了构件之后的apk文件在什么地方了,通过apk文件名可以看到现在的安装文件时未签名的unsigne。如果需要发布到应用商店,我们需要进行签名并优化。
keytool -genkey -v -keystore myApp-release-key.keystore -alias myApp-release-key.keystore -keyalg RSA -keysize 2048 -validity 10000
keytool - genkey - v - keystore myApp - release - key .keystore - alias myApp - release - key .keystore - keyalg RSA - keysize 2048 - validity 10000
根据提示输入相关的密码以及其他信息,成功之后可以再当前目录下看到 名为 myApp-release-key.keystore 的文件
4.签名
jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA1 -keystore myApp-release-key.keystore myApp-release-unsigned.apk myApp-release-key.keystore
zipalign -v 4 myApp-release-unsigned.apk myApp.apk
jarsigner - verbose - sigalg SHA256withRSA - digestalg SHA1 - keystore myApp - release - key .keystore myApp - release - unsigned .apk myApp - release - key .keystore
zipalign - v 4 myApp - release - unsigned .apk myApp .apk