美文网首页
Android反编译记录

Android反编译记录

作者: zhaoyubetter | 来源:发表于2016-10-31 14:21 被阅读60次

    参考资料
    http://blog.csdn.net/guolin_blog/article/details/49738023

    【反编译代码】

    到以下两款工具:
    dex2jar 这个工具用于将dex文件转换成jar文件
    下载地址:http://sourceforge.net/projects/dex2jar/files/
    jd-gui 这个工具用于将jar文件转换成java代码
    下载地址:http://jd.benow.ca/

    java源代码反编译步骤:
    1.apk包解压,将dex文件,copy到 dex2java 文件夹中;
    2.通过cmd命令行到文件夹 dex2jar,执行命令:d2j-dex2jar xxx.dex; 将得到相应的jar文件
    3.通过 gui-jd 查看,第二部得到的jar文件;

    【反编译资源】
    使用工具:
    apktool
    apktool 这个工具用于最大幅度地还原APK文件中的9-patch图片、布局、字符串等等一系列的资源。
    下载地址:http://ibotpeaches.github.io/Apktool/install/
    下载文件1:apktool.bat
    下载文件2:apktool_2.2.1.jar

    反编译资源步骤:
    1.改名 apktool_2.2.1.jar 为 apktool.jar
    2.将apk文件,copy到下载的文件的同一目录;
    3.cmd进入此目录,执行 apktool d xxx.apk

    其中d是decode的意思,表示我们要对Demo.apk这个文件进行解码。那除了这个基本用法之外,我们还可以再加上一些附加参数来控制decode的更多行为:
    
        -f 如果目标文件夹已存在,则强制删除现有文件夹(默认如果目标文件夹已存在,则解码失败)。
        -o 指定解码目标文件夹的名称(默认使用APK文件的名字来命名目标文件夹)。
        -s 不反编译dex文件,也就是说classes.dex文件会被保留(默认会将dex文件解码成smali文件)。
        -r 不反编译资源文件,也就是说resources.arsc文件会被保留(默认会将resources.arsc解码成具体的资源文件)。
    

    的缓存文件,将这个缓存文件删除掉,然后再重新执行反编译命令应该就可以成功了。

    相关文章

      网友评论

          本文标题:Android反编译记录

          本文链接:https://www.haomeiwen.com/subject/illputtx.html