Android 签名个人理解

来源:互联网 发布:国信软件 编辑:程序博客网 时间:2024/05/17 07:28

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

原创粉丝点击