Android 逆向
没啥好说的,先扫一下盲
APK 组成
asset文件夹:
资源目录1:asset和res都是资源目录但有所区别,见下面说明
lib文件夹: so库存放位置,一般由NDK编译得到,常见于使用游戏引擎或JNI native调用的工程中
res文件夹 :资源目录2:asset和res都是资源目录但有所区别,见下面说明
classes.dex :Java代码编译得到的Dalvik VM能直接执行的文件,下面有介绍
res目录下的资源文件在编译时会自动生成索引文件(R.java),在Java代码中用R.xxx.yyy来引用;
而asset目录下的资源文件不需要生成索引,在Java代码中需要用AssetManager来访问;
一般来说,除了音频和视频资源(需要放在raw或asset下),使用Java开发的Android工程使用到的资源文件都会放在res下;使用C++游戏引擎(或使用Lua Unity3D等)的资源文件均需要放在asset下。
Dalvik 字节码
Dalvik字节码是什么?
Dalvik字节码是学习破解的基础,对它我们需要了解一下
Dalvik是google专门为Android操作系统设计的一个虚拟机,经过深度的优化。虽然Android上的程序是使用java来开发的,但是Dalvik和标准的java虚拟机JVM还是两回事。Dalvik VM是基于寄存器的,而JVM是基于栈的;Dalvik有专属的文件执行格式dex(dalvik executable),而JVM则执行的是java字节码。Da