Android反编译学习

工欲善其事必先利其器,先下载工具链: apktool, jd-gui, dex2jar.sh

【这里已经假设你有android基础】

反编译APK确实我已经没有接触过,由于工作需要,我只能硬着头皮学习了。

反编译APK程序,必须需要一定的android基础还要有 汇编基础(这个没有关系,可以看看网上JAVA汇编注释)

一般的代码都可以反编译出来,但是有一些代码被混淆了或者被如何如何了,所以需要看类似汇编的代码,有很多核心的代码会写成一个动态库的形式,如果你需要反编译出来自己写的程序也能运行起来,必须会NDK(说白了,只是绑定而已).


如果破解,需要改东西,必须一定要会看 smali 的代码.


[if语句的判断]

if-eq v0, v1, : cond_0 # v0 == v1 跳转到 cond_0 执行流程.

if-ne v0, v1, :cond_0 # v0 != v1....

if-lt v0, v1, :cond_0 # v0 < v1 ....

if-le v0, v1, :cond_0 # v0 <= v1 ... ...

if-ge v0, v1, :cond_0 # v0 >= v1 ....

if-gt v0, v1, :cond_0 # v0 > v1 ... ...

if-eqz v0,:cond_0 # v0 == 0 ... ...

if-nez v0, :cond_0 # v0 != 0 ... ...

if-ltz v0, :cond_0 # v0 < 0 ... ...

if-gez v0, :cond_0 # v0 >= 0 ... ...

if-gtz v0, :cond_0 # v0 > 0 

if-lez v0, :cond_0 # v0 <= 0




你可能感兴趣的:(Android反编译学习)