Android 开发之 APP 签名

一、为什么要给 APP 签名?


Android 系统要求所有的程序经过数字签名才能安装,如果没有可用的数字签名,系统将不许安装运行此程序,不管是模拟器还是真实手机。为了方便我们开发调试程序,ADT 会自动的使用 debug 密钥为应用程序签名。debug 密钥?它在哪?debug 密钥是一个名为debug.keystore的文件,它位于:/Documents and Settings/tm/.Android/debug.keystore,其中的 tm 是电脑的用户名。

如果我们想拥有自己的签名,而不是让 ADT 帮我们签名的话,我们也要有一个属于自己的密钥文件(*.keystore)。

二、如何给 APP 签名?


1、通过 Eclipse 的导出功能导出带签名的 apk(生成 key,用 key 对 APP 进行签名)。

2、完全通过 DOS 命令来完成 apk 签名。

因为我喜欢第一种方式,所以下面就说一下用 Eclipse 导出的方式。

第一步:选择导出

选择导出

第二步:创建秘钥 keystore,输入密码,密码一定要记住,下次使用 Use existing keystore 会用到,以后生成 apk 都用这个秘钥和密码。

创建秘钥 keystore

第三步:填写秘钥信息等

填写秘钥信息等

第四步:到这里就生成带签名的 apk 文件了

生成带签名的 apk 文件

第五步:如果不是第一次生成 apk 文件将用以上生成的签名文件进行签名

进行签名

进行签名

三、使用签名有什么好处?


  • APP 一定会升级的,使用相同签名的 apk 升级的时候可以直接覆盖老版本进行升级,否则系统则会提示已经安装了签名冲突的同名数据包,不允许新版本安装成功。

  • 可以进行模块化升级。

  • 可以共享代码和数据。

(完)