在创建项目的过程中,经常将发布的打包过程忘记了,记录一下。
开始之前
先了解两件事情:
- Keytool 是一个有效的安全钥匙和证书的管理工具.
- Android 要求所有的程序必须有签名,否则就不会安装该程序。
生成命令
注意
:记得将alias_name
改一下。
$ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
之前忘记修改这个名记造成很大问题。这过程中会问你一些问题:
Enter keystore password:
Re-enter new password:
What is your first and last name?
[Unknown]: phodal
What is the name of your organizational unit?
[Unknown]: phodal
What is the name of your organization?
[Unknown]: phodal
What is the name of your City or Locality?
注意
:如果你想要将应用发布到一些应用市场的时候,将保存好你的签名,出现签名不一致的话,就说明有问题了。。。
构建 Android应用
1.生成 release包
Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。
$ cordova build --release android
2.签名
jarsigner是JDK中包含的用于JAR文件签名和验证的工具。
$jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore HelloWorld-release-unsigned.apk alias_name
注意
: alias_name与上面所的应该是一致的
3.优化
Zipalign是一个android平台上整理APK文件的工具,它首次被引入是在Android 1.6版本的SDK软件开发工具包中。它能够对打包的Android应用程序进行优化, 以使Android操作系统与应用程序之间的交互作用更有效率,这能够让应用程序和整个系统运行得更快。
$zipalign -v 4 HelloWorld-release-unsigned.apk HelloWorld.apk
注意
: 正常情况下zipalign应该在你的android sdk 的Home目录的build-tools的某个版本的SDK下面。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。