Android项目以它的包名作为唯一标识,如果在同一台手机上安装两个包名相同的应用,后面安装的应用就可以覆盖前面安装的应用。为了避免这种情况发生,Android要求对作为产品发布的应用进行签名。
签名主要有如下两个作用:
1、确定发布者的身份。由于应用发开着可以通过使用相同的包名来替换已经安装的程序,因此,使用签名可以避免发生这种情况。
2、确保应用的完整性。签名会对应用包中的每个文件进行处理,从而确保程序包中的文件不会被替换。
在Eclipse中对Android应用签名
(最好先在应用中创建一个名为”Sign“的文件夹,以此来存储将要创建的数字证书的存储路径及程序密码、应用名、用户密码)
(1) 右击Andoid项目,单击"Android Tools→Export Signed Application Package..." 弹出签名窗口。(查看Project是否为所需要签名的应用程序),点击next;
如果系统中还没有数字证书
(2) 如果系统中还没有数字证书,可以选择“Create new keystore"单选按钮,并填写数字证书存储路径和密码。(如已经建立了”Sign“文件夹,则将数字证书存储在此文件夹路径下),输入密码并再次输入以确认密码(最好创建一个名为sign.txt的文本文档,存放在Sign文件夹下,以此来保存密码,以免以后忘记),点击next;
(3)按照要求填写相关信息,(记录下Alias及用户密码,也保存在sign.txt的文本文档,以免签名时忘记),点击next;
(4)添加签好名后APK的存储路径,点击Finish。(都完成后,到APK的存储路径下,查看是否已经有APK生成)。
如果系统中有数字证书
(2)如果系统中有数字证书,可以选择“Use existing keystore"单选按钮,选择Location的路径(此路径为创建数字证书时的存储路径,本例中为”SignPreload“文件夹下的具体数字证书路径),填写密码(密码为创建数字证书时填写的密码,保存在sign.txt的文本文档中),点击next;
(3)选择Alias的名称(sign.txt的文本文档中记录的Alias的名称),填写密码(sign.txt的文本文档中记录的用户密码),点击next;
(4)选择一个你所希望存储生成签名过的Apk的路径,点击Finish。
也可使用命名对APK包签名