安卓历史版本

Android 4.4以前,采用dalvik/dvm虚拟机 libdvm.so
Android 4.4,里面有dvm和art虚拟机,可以切换 libdvm.so libart.so
Android 5.0及以后,使用art虚拟机,Android系统也可以分32位和64位

APK基本结构

assets				资源文件(图片、音频、数据库、网页、配置文件等)
res				资源文件,需要编译(布局)
lib				各种平台下使用的对应的so文件
META-INF			签名文件(apk必须签名后才可以安装)
resources.arsc			资源加密(比如:语言包)
AndroidManifest.xml		清单文件(图片、界面、权限、入口)
classes.dex			源代码

data/data目录

存放用户apk数据的目录,每个apk都有自己的目录,以包名命名。
就是在data/data目录下,会产生一个跟Package一样的目录。
这是一个私有目录,app只能访问各自的目录,除非root权限。

data/app目录

用户安装的app存放在这个目录下,其中的base.apk一般就是原安装包

data/local/tmp目录

临时目录,权限比较大。

system/app目录

存放系统自带的app。

system/lib目录、system/lib64目录

存放app用到的so文件。
system/lib下面是用来支持32位应用需要的so文件
system/lib64下面是用来支持64位应用需要的so文件

system/bin目录

存放shell命令。

system/framework目录

Android系统所用到的框架,如一些jar文件,XposedBridge.jar。

sdcard目录

不管手机有没有sd卡都有这个目录。
权限比较大,但是app操作sd卡需要申请权限。

/sdcard - > /storage/self/primary
/mnt/sdcard
/storage/emulated/0

posted on 2022-03-21 11:03  hack2xia  阅读(470)  评论(0)    收藏  举报