在Eclipse中对Android应用签名

大部分时候,开发者会直接在Eclipse中对Android应用签名,在Eclipse中对Android应用签名的步骤如下。

①右击Android项目,"AndroidTools→ExportSignedApplicationPackage..."菜单项。

②如果系统中开没有数字证书,可以再窗口中选中"Createnewkeystore"单选按钮,并按格式填写数字证书的存储路径和密码。

③完成后单击"Next"按钮,出现的窗口让用户填写数字证书的详细信息

④数字证书填写详细信息后单击"Next"按钮,窗口,用于指定生成签名后的APK安装包的存储路径。

⑤"Finish"按钮,签名完成

利用已有的数字证书进行签名,请按如下步骤进行。

①窗口中选中"Useexistingkeystore",并使用前面创建的数字证书

②选中前面创建的keystore,并输入创建keystore时指定的密码,然后单击"Next"按钮

③输入创建该key时的指定的密码。然后单击"Next"按钮,窗口指定签名后APK包的存储路径,最后单击"Finish"按钮即可生成签名后的APK

使用命令对APK包签名

①创建keystore库。JDK的安装目录下的bin子目录下提供了keytool.exe工具来生成数字证书。在命令行窗口输入如下命令:

keytool-genkeypair-aliascrazyit.keystore-keyalgRSA-validity400-keystorecrazyit.keystore

上面命令中各选项说明如下。

-genkeypair:指定生成数字证书

-alias:指定生成数字证书的别名

-keyalg:指定生成数字证书的算法。使用RSA算法。

-validity:指定生成的数字证书的有效期。

-keystore:指定所生成的数字证书的存储路径。

输入上面命令后按回车键,接下来将会以交互方式让用户输入数字证书keystore的密码、作者、公司等详细信息

②生成未签名的APK安装包。在Eclipse中右击Android项目,单击"AndroidTools→ExportUnsignedApplicationPackage..."菜单项,Eclipse弹出一个保存文件的对话框,当用户选择存储文件后单击"Finish"按钮即可生成一个未签名的APK安装包。

③使用jarsigner命令对未签名的APK安装包进行签名。JDK的安装目录下的bin子目录下提供了jarsigner.exe工具进行签名。在命令行窗口输入如下命令:

jarsigner-verbose-keystorecrazyit.keystore-signedjarHelloWorld_crazyit.apkHelloWorld.apkcrazyit.keystore

上面的命令中各选项说明如下。

-verbose:指定生成详细输出。

-keystore:指定数字证书的存储路径

-signedjar:该选项的三个参数分别为签名后的APK包、未签名的APK包、数字证书的别名。

输入上面命令后按回车键,接下来将会以交互式方式让用户输入数字证书keystore的密码

④使用zipalign.exe工具优化APK安装包。zipalign.exe是Android自带的一个档案整理工具,它可用于优化APK安装包,从而提升Android应用与系统之间的交互效率,提升应用程序的运行速度。在命令行窗口输入如下命令:

zipalign-f-v4HelloWorld_crazyit.apk

HelloWorld_crazyit.apk

上面的命令中各选项说明如下。

-f:指定强制覆盖已有的文件。

-v:指定生成详细输出。

4:指定档案整理所基于的字节数,通常指定为4,也就是基于32位进行整理。

HelloWorld_crazyit.apk和HelloWorld_crazyit_zip.apk分别指定整理前的APK和整理后生成的APK。

运行上面命令,将会再当前目录下生成一个HelloWorld_crazyit_zip.apk文件,这就是签名完成且经过优化的APK安装包,该安装包可以对外发布了。

相关推荐