`
- 浏览:
7963 次
- 性别:
-
大部分时候,开发者会直接在Eclipse中对Android应用签名,在Eclipse中对Android应用签名的步骤如下。
①右击Android项目,"Android Tools→Export Signed Application Package..."菜单项。
②如果系统中开没有数字证书,可以再窗口中选中"Create new keystore"单选按钮,并按格式填写数字证书的存储路径和密码。
③完成后单击"Next"按钮,出现的窗口让用户填写数字证书的详细信息
④数字证书填写详细信息后单击"Next"按钮,窗口,用于指定生成签名后的APK安装包的存储路径。
⑤"Finish"按钮,签名完成
利用已有的数字证书进行签名,请按如下步骤进行。
①窗口中选中"Use existing keystore",并使用前面创建的数字证书
②选中前面创建的keystore,并输入创建keystore时指定的密码,然后单击"Next"按钮
③输入创建该key时的指定的密码。然后单击"Next"按钮,窗口指定签名后APK包的存储路径,最后单击"Finish"按钮即可生成签名后的APK
使用命令对APK包签名
①创建keystore库。JDK的安装目录下的bin子目录下提供了keytool.exe工具来生成数字证书。在命令行窗口输入如下命令:
keytool -genkeypair -alias crazyit.keystore -keyalg RSA -validity 400 -keystore crazyit.keystore
上面命令中各选项说明如下。
-genkeypair:指定生成数字证书
-alias:指定生成数字证书的别名
-keyalg:指定生成数字证书的算法。使用RSA算法。
-validity:指定生成的数字证书的有效期。
-keystore:指定所生成的数字证书的存储路径。
输入上面命令后按回车键,接下来将会以交互方式让用户输入数字证书keystore的密码、作者、公司等详细信息
②生成未签名的APK安装包。在Eclipse中右击Android项目,单击"Android Tools→Export Unsigned Application Package..."菜单项,Eclipse弹出一个保存文件的对话框,当用户选择存储文件后单击"Finish"按钮即可生成一个未签名的APK安装包。
③使用jarsigner命令对未签名的APK安装包进行签名。JDK的安装目录下的bin子目录下提供了jarsigner.exe工具进行签名。在命令行窗口输入如下命令:
jarsigner -verbose -keystore crazyit.keystore -signedjar HelloWorld_crazyit.apk HelloWorld.apk crazyit.keystore
上面的命令中各选项说明如下。
-verbose:指定生成详细输出。
-keystore:指定数字证书的存储路径
-signedjar:该选项的三个参数分别为签名后的APK包、未签名的APK包、数字证书的别名。
输入上面命令后按回车键,接下来将会以交互式方式让用户输入数字证书keystore的密码
④使用zipalign.exe工具优化APK安装包。zipalign.exe是Android自带的一个档案整理工具,它可用于优化APK安装包,从而提升Android应用与系统之间的交互效率,提升应用程序的运行速度。在命令行窗口输入如下命令:
zipalign -f -v 4 HelloWorld_crazyit.apk
HelloWorld_crazyit.apk
上面的命令中各选项说明如下。
-f:指定强制覆盖已有的文件。
-v:指定生成详细输出。
4:指定档案整理所基于的字节数,通常指定为4,也就是基于32位进行整理。
HelloWorld_crazyit.apk和HelloWorld_crazyit_zip.apk分别指定整理前的APK和整理后生成的APK。
运行上面命令,将会再当前目录下生成一个HelloWorld_crazyit_zip.apk文件,这就是签名完成且经过优化的APK安装包,该安装包可以对外发布了。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
Android特性及架构,Android应用程序框架和程序库,Android 运行库和Linux内核,如何安装配置Android SDK、建立应用程序签名、移植Android应用程序、Android开发及调试以及如何在eclipse上开发Android应用程序,利用...
Android应用开发常见错误与对策 Android应用开发常见错误与对策 提纲 一、Android 总体框架介绍 1. Android历史 2. Android框架图 二、Android 开发工具和环境 1. Eclipse开发工具 2. Adb 调试工具 三、Android ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...
签名的意义为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会...
Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...