apktool(提取资源文件)
资源文件获取,可以提取出图片文件和布局文件进行使用查看。
下载地址: https://bitbucket.org/iBotPeaches/apktool/downloads/
APK文件无非就是一个zip压缩包,但是直接用unzip
命令解压,会增大编译源,从而无法进行下一步的查看或反编译。apktool
就是扮演这么一个角色,可以加压缩,并且可以正常解码文件。
apktool常见的一些命令参数:
d
或decode
用来解码后面的apk文件。
-o
output输出文件。
b
或build
创建apk包。
if
或install-framework
安装框架到apk。
# 解码或解压bar.apk,并输出到baz文件夹
apktool d bar.apk -o baz
# 压缩bar文件加并创建new_bar.apk文件
apktool b bar -o new_bar.apk
# 安装框架到foo/bar/1-baz.apk,p是path路径,t是tag标记。
apktool if framework-res.apk -t baz -p foo/bar
dex2jar(dex转jar)
将apk反编译成java源码(classes.dex转化成jar文件)。
下载地址:https://sourceforge.net/projects/dex2jar/files/
使用方法:
首先把apk文件扩展名改为zip,然后解压缩,就得到了classes.dex
和resources.arsc
,
然后运行一下命令:
# Linux
sh d2j-dex2jar.sh -f ~/path/to/apk_to_decompile.jar
# windows
d2j-dex2jar.bat -f ~/path/to/apk_to_decompile.jar
就得到了反编译的jar包。
jd-gui 查看源码(不推荐用)
查看APK中classes.dex转化成出的jar文件,即源码文件。
下载地址:http://jd.benow.ca/
需要java 1.7.0
运行jd-gui.exe
。
或D:\jdk7\bin\java.exe -jar jd-gui-1.4.0.jar
(注意jdk7的目录)。
Luyten反编译查看源码
jd-gui
反编译不是很准,建议用Luyten
,最关键的是兼容Java新版本。
下载地址:https://github.com/deathmarine/Luyten/releases
执行java -jar luyten-0.5.3.jar
就能打开可视化界面了。
参考
https://ibotpeaches.github.io/Apktool/documentation/
https://github.com/pxb1988/dex2jar
https://github.com/deathmarine/Luyten
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/35319.html