Android的应用安装涉及到如下几个目录

 

/data/app:存房用户安装apk的目录,安装时,把apk拷贝到这里

/data/data:应用安装完成后,在/data/data目录下自动生成和APK包名相同的文件夹,用户存放应用程序的数据

/data/dalivk-cache:存放apk的odex文件,便于应用启动时直接执行

具体安装过程如下:

首先,复制apk安装包到/data/app下,然后校验apk的签名是否正确,检查apk的结构是否正常,进而解压并且

校验apk中的dex文件,确定dex文件没有被破坏后,再把dex优化城odex,使得应用程序启动时间加快,同时

在/data/data目录下建立apk包名相同的文件夹,如果apk中有lib库,系统会判断这些so库的名字,是否以lib开头

是否以.so结尾,再根据CPU的架构解压对应的so库到/data/data/packagename/lib下

apk安装的时候会把dex文件解压并且优化城odex

 

 odex在原来的dex文件头添加了一些数据,在文件尾部添加了程序运行时需要的依赖库和辅助数据,使得程序运行速度更快。

posted on 2020-06-11 15:32  青年程序猿  阅读(956)  评论(0)    收藏  举报