您的位置:首页 > 移动开发 > Android开发

Android 签名个人理解

2013-11-28 15:47 211 查看
1、同一开发者的多个程序尽可能使用同一数字证书。

2、数字签名时,要考虑数字证书的有效期:

(1)数字证书的有效期要包含程序的预计生命周期,如果数字证书失效,持有该数字证书的程序将不能正常升级;

(2)如果多个程序使用同一数字证书,则该数字证书的有效期要包含所有程序的预计生命周期;

(3)Android Market强制要求所有应用程序数字证书的有效期要持续到2033年10月22日以后。

3、Android数字证书的几个要点:

(1)所有的应用程序都必须有数字证书,Android系统不会安装没有数字证书的应用程序;

(2)Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证;

(3)如果要发布一个应用程序,必须使用一个合适的私钥生成的数字证书来给程序签名,而不能使用adt插件或ant工具生成的调试证书来发布;

(4)数字证书都具有有效期,Android只是在应用程序安装的时候才会检查证书的有效期。如果程序已安装在系统中,即使证书过期也不会影响程序的正常功能;

(5)Android使用标准的java工具keytool和Jarsigner来生成数字证书,并给应用程序包签名;

(6)使用zipalign优化程序。

4、Android开发工具给apk程序签名的方式:

(1)调试模式(debug mode):adt每次编译时签名;

(2)发布模式(release mode):开发者自己签名;

5、要发布程序,两种方法给应用程序签名:

(1)使用keytool和jarsigner(适合1.5一下的版本)

命令:keytool -genkey -v -keystore android.keystore -alias android -keyalg RSA -validity 20000

说明:1)-keystore:生成的证书,可以加上路径;

2)-alias:证书的别名;

3)-keyalg:采用的算法;

4)-validity:有效期。

(2)适合1.5以上版本

Eclipse->项目右键->android tools->export siged application package->next->create new keystore,填写信息->next->填写信息->next->finish
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: