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

android apk 应用 重新签名 方法

2014-03-20 19:23 411 查看
android apk应用重新签名方法,以及注意事项

1. 生成签名证书

使用JDK自带的keytool工具, 运行下面的命令

keytool -genkey -alias androidauto.keystore -keyalg RSA -validity20000 -keystore android.keystore

/*解释:keytool工具是Java JDK自带的证书工具

-genkey参数表示:要生成一个证书(版权、身份识别的安全证书)

-alias参数表示:证书有别名,-alias androidauto.keystore表示证书别名为:androidauto

-keyalg RSA表示加密类型,RSA表示需要加密,以防止别人盗取

-validity 20000表示有效时间20000天

-keystore android.keystore表示要生成的证书名称为android

*/

输入完回车后屏幕显示:

输入keystore密码:[密码不回显]

再次输入新密码:[密码不回显]

您的名字与姓氏是什么?

Unknown]:cheers

您的组织单位名称是什么?

Unknown]:cheers

您的组织名称是什么?

Unknown]:cheers

您所在的城市或区域名称是什么?)

Unknown]:shanghai

您所在的州或省份名称是什么?

Unknown]:shanghai

该单位的两字母国家代码是什么

Unknown]:CN

输入< ***.keystore>的主密码

(如果和keystore密码相同,按回车):

执行以上语句后在执行的目录下会生成证书文件 android.keystore

2. 删除之前APK文件的签名

1、解压apk文件(我用7-ZIP 提取出来)

2、删除解压出来文件夹中的 META-INF目录:META-INF存放签名后的CERT和MANIFEST文件,用于识别软件的签名及版权。

3、删除文件夹后重新把解压出来的其它文件夹压缩为zip文件,然后直接把文件后缀改为apk

注意:一定要选中要压缩的文件,然后压缩成.zip 文件,zip文件必须是根目录,即 打开zip文件,就能看见压缩的文件内容,这非常重要。

3. 为APK重新生成签名

1、将证书复制到与需要重新签名的apk文件相同的目录下

2、进入该目录下执行以下语句

[b]jarsigner -verbose -keystore android.keystore -signedjar
cheers_app_debug.apk
[b]cheers_app_unsigned
.apk
androidauto.keystore[/b]

命令解释:[/b]

jarsigner是Java的签名工具,JDK自带

-verbose参数表示:显示出签名详细信息

-keystore表示使用当前目录中的android.keystore签名证书文件。

-signedjar
cheers_app_debug.apk cheers_app_unsigned.apk
表示签名后生成的APK名称为 cheers_app_debug.apk
,未签名的APK Android软件名称为cheers_app_unsigned.apk


-androidauto.keystore表示签名文件的别名,生成证书的时候有书写

执行以上操作之后在目录下生成了[b]cheers_app_debug.apk,经过自己签名的APK文件[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: