对安卓反编译点的一点收获

1先下载dex2jar 和jd-gui,和paktool推荐上官网下载

放出链接:http://sourceforge.net/projects/dex2jar/ 

                   http://jd.benow.ca/

尝试了反编译安卓apk,反编译出来的java源码的变量等都是 abcdef等字母,很难理解。看了一天之后,虽然还没完成自己想分析的东西,不过还是先记下来吧。

使用起来很简单,百度就有。我的简单步奏是先解压apk获取里面的.dex文件,使用dex2jar获取jar包,利用jd-gui导出成java文件,之后使用sublime来查看。

之后使用apktool反编译获取xml的源文件,注意刚开始只能编译出java文件。

因为使用了sublime的字符串查找功能,十分好用。

反编译出来的资源文件里面找到public.xml,这个记录的就是资源id。

public.xml----->

例如,要分析apk里面的一个功能,可以从这些id和资源文件作为突破口,可以先从别人的软件界面里确定某个特有的imageview的图片,或者试着寻找这个布局,当找到了之后。

例如我需要分析的一个功能在界面a里面,我找到了a_layout.xml,在布局里面有一个id是btn_function的按钮,之后再public.xml里面寻找这个id当前的int值,找到之后就可以使用sublime打开java源文件那个文件夹按ctrl shift f进行去全局搜索,一般都能找到这个按钮在哪个java文件里面出现过。初步定为到此结束。因为java源代码有可能都不是原来的变量名,最好就是从资源id入手,慢慢理清思路

下面是我理顺源代码中逻辑的过程

-========》》》》》


有两点建议:1类中原本定义的常量都用了对应数字来代替,2可能出现引用static常量时,显示成这样的情况 :a.a


                  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值