如何给apk手动重新打上签名
2017-05-31 17:09
309 查看
[QUESTION]
如何给apk手动重新打上签名
[ANSWER]
有时,为了验证特定功能,获取必要权限,需要手动给apk打上需要的签名,步骤如下:
1.首先需要有java环境
2.需要打签名的工具,该工具的源码位于android源码的build/tools/signapk目录下,linux系统编译生成的位置在out/host/linux-x86/framework/signapk.jar
3.需要所打签名的公钥和私钥,对于各个厂家自己的签名,不同厂家具体位置不同,google默认位置为build/target/product/security目录,该目录下为debug版本的签名,后缀为pem的文件代表公钥,后缀为pk8的文件表示私钥。
4.打签名方法:
java -jar 路径/signapk.jar 路径/公钥 路径/私钥 source.apk target.apk
路径: 表示signapk.jar,公钥,私钥所在的路径
公钥:签名的公钥,例如platform.x509.pem
私钥:签名的私钥,例如platform.pk8,注意公钥和私钥要匹配,成对出现
source.apk:需要手动打签名的apk
target.apk:重新打签名后的apk
示例:
java -jar out/host/linux-x86/framework/signapk.jar build/target/product/security/platform.x509.pem build/target/product/security/platform.pk8 QQ.apk QQ_resign.apk
5.验证:
可以先安装原始的apk,例如 QQ.apk,然后再次通过adb方式安装重新打签名的apk:QQ_resign.apk,如果因为签名不一致导致的安装失败,说明打签名成功。
//安装原始apk
adb install QQ.apk Success
//安装重新打签名的apk
adb install -r QQ_resign.apk Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
PS:apk之所以需要签名,是出于安全考虑的认证方式,apk没有签名或者前后签名不一致都无法安装。任何对apk的篡改,都需要重新对apk签名才能安装,由于篡改者是无法获取原始apk的秘钥信息,因此篡改后的apk由于签名不一致是无法替换原始apk的,这样既保证了apk的安全性,同时也保证了手机的安全和稳定性。
如何给apk手动重新打上签名
[ANSWER]
有时,为了验证特定功能,获取必要权限,需要手动给apk打上需要的签名,步骤如下:
1.首先需要有java环境
2.需要打签名的工具,该工具的源码位于android源码的build/tools/signapk目录下,linux系统编译生成的位置在out/host/linux-x86/framework/signapk.jar
3.需要所打签名的公钥和私钥,对于各个厂家自己的签名,不同厂家具体位置不同,google默认位置为build/target/product/security目录,该目录下为debug版本的签名,后缀为pem的文件代表公钥,后缀为pk8的文件表示私钥。
4.打签名方法:
java -jar 路径/signapk.jar 路径/公钥 路径/私钥 source.apk target.apk
路径: 表示signapk.jar,公钥,私钥所在的路径
公钥:签名的公钥,例如platform.x509.pem
私钥:签名的私钥,例如platform.pk8,注意公钥和私钥要匹配,成对出现
source.apk:需要手动打签名的apk
target.apk:重新打签名后的apk
示例:
java -jar out/host/linux-x86/framework/signapk.jar build/target/product/security/platform.x509.pem build/target/product/security/platform.pk8 QQ.apk QQ_resign.apk
5.验证:
可以先安装原始的apk,例如 QQ.apk,然后再次通过adb方式安装重新打签名的apk:QQ_resign.apk,如果因为签名不一致导致的安装失败,说明打签名成功。
//安装原始apk
adb install QQ.apk Success
//安装重新打签名的apk
adb install -r QQ_resign.apk Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
PS:apk之所以需要签名,是出于安全考虑的认证方式,apk没有签名或者前后签名不一致都无法安装。任何对apk的篡改,都需要重新对apk签名才能安装,由于篡改者是无法获取原始apk的秘钥信息,因此篡改后的apk由于签名不一致是无法替换原始apk的,这样既保证了apk的安全性,同时也保证了手机的安全和稳定性。
相关文章推荐
- 如何重新签名APK文件
- 如何手动对apk进行签名?
- android如何给apk重新签名
- 如何给Android的apk重新签名
- Android如何重新签名APK
- android如何给apk重新签名
- Android 如何对apk文件进行反编译以及重新打包签名 标签: apktoolandroid反编译jebSmali2Java 2016-05-10 16:00 3897人阅读 评论(0) 收藏
- Android 如何对apk文件进行反编译以及重新打包签名
- 如何将Android 源码中编译出的apk进行自己的签名
- 重新签名APK文件
- 重新签名APK文件
- 给程序替换图标,重新签名 apk 文件。
- Android apk重新签名
- ant生成android工程与 自动或者手动签名apk
- 重新签名APK文件
- Android平台上如何让应用程序获得系统权限以及如何使用platform密钥给apk签名
- apk重新签名
- Apk重新签名方法
- android apk签名(为什么 如何做签名)
- system app 下面的apk 修改后不需要重新签名