apk 反编译以及反编译后重新生成apk --apktool工具的使用

来源:互联网 发布:topsir 知乎 编辑:程序博客网 时间:2024/06/05 06:34

最近遇到一个这样的问题,就是想修改第三方提供的apk中的 AndroidManifest.xml 文件, 自然想起原先玩过的apktool工具,现在将具体操作总结如下:

1. 相关工具的下载:

AutoSign :
http://d.download.csdn.net/down/2768910/fjfdszj
Apktool
http://code.google.com/p/android-apktool/downloads/list (下载操作请参考:http://code.google.com/p/android-apktool/)

2.具体修改AndroidManifest.xml 文件的步骤如下:

a. 将下载的工具解压到同一个目录这里假设为apktool$,并且将要修改的apk 放在该目录这里假设为xxx.apk
$ ls
aapt apktool apktool.jar libhgl.so README signapk.jar Sign.bat testkey.pk8 testkey.x509.pem xxx.apk

b. 使用apktool 工具 decode xxx.apk,将产生xxx目录,里面包含AndroidManifest.xml 文件,打开该文件修改该文件

$ ./apktool d xxx.apk
$ls
aapt apktool apktool.jar libhgl.so README signapk.jar Sign.bat testkey.pk8 testkey.x509.pem xxx.apk xxx

$vim ./xxx/AndroidManifest.xml

c. 重新将xxx目录打包成apk,这里生成的apk 是没有签名的,在使用adb install 该apk会出现Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES] 错误。

$ ./apktool b xxx xxx1.apk

d. 对新产生的xxx1.apk 进行签名,在签名之前,请将原生的xxx.apk 更改为其他名字 或删除。

$mv xxx.apk xxx2.apk
$ java -jar signapk.jar testkey.x509.pem testkey.pk8 xxx1.apk xxx.apk

e.安装apk看结果。

$adb install -r xxx.apk

参考同事的博文:

http://rayleeya.iteye.com/blog/841076





原创粉丝点击