关于安卓反编译的几种方式(初识)

哈喽,我是小路,大家在安卓开发过程中,看到一些漂亮精致的应用时,是不是很想知道是怎么做的,今天我们介绍几种简单方便的反编译的工具,成功率还是挺高的的,不过一般做得比较好的应用也不是那么容易就让你反编译出来,同时谷歌也加入了这方面的支持,可以让代码混淆,让别人很难看懂你的代码,从而达到保护代码的作用

不过依然有很多可以破解的方式,下面我介绍几种安卓反编译的方式,有pc端的也有手机端的**

用到的工具:

  1. 安卓逆向助手(傻瓜式操作,适合小白,需要环境的支持)
  2. Apkdb (命令行方式)
  3. Smali2Java(直接打开项目即可看大部分代码)
  4. showjava(手机端反编译利器)

目前就用过这么多,我也不太经常反编译别人的东西,毕竟不太好

下面进入实战,测试下几款工具的利弊

我们拿一个小应用来测试。

这是应用的主界面,不要在意细节,我们是来学习的

不得不说应用做的很白,很大,才2M!


下面进入实战,首先实验第一款工具,android逆向助手,我们将apk拉进工具里,选择反编译即可,可以看到功能还是挺强的。

我们去检查一下代码有没有出来

我们可以看到 貌似有三个类一样的东西,后缀还是smali,我们使用第二款工具尝试打开试试。

经过smali处理之后,根目录生成了3个java文件,我们打开看看

代码貌似没啥问题,不过经过检查清单文件可发现,这根本不是我们需要的类,这里只是加载了os库而已,可以看出作者还是考虑到了这一点


我们测试下手机端的反编译工具

安卓的反编译工具:

我们打开刚刚安装的应用,进行反编译

五秒左右,就编译完成,佩服作者!


可以看出 手机端的反编译工具从速度和准确度上要好于pc端的,虽然没看到关键代码,其实我也没打算深入看,哈哈哈哈哈哈哈哈哈。。END

猜你喜欢

转载自blog.csdn.net/code_xiaolu/article/details/53791014