0326-安卓apk应用/root权限

2020-03-26  本文已影响0人  小咕咕coco

来自http://4ch12dy.site/2019/08/01/android-apk-install-process/android-apk-install-process/#an-zhuang-guo-cheng-xiao-jie

来自:https://zhuanlan.zhihu.com/p/79973102

我们知道,Windows应用程序的安装包是一个可执行的压缩包,安装的过程是把压缩包中的数据和依赖库拷贝到安装目录,再在桌面或启动栏创建快捷方式,那么安卓的APK安装过程是不是也是这样的呢

apk:

APK包是个简单的压缩包,可以用zip工具直接解压它

一个APK包含以下这些文件:

安装过程

  1. 与应用相关的一些目录

/system/priv-app:系统应用安装路径,Android 4.4+ 开始出现,区分系统应用权限,拥有 SignatureOrSystem 权限,此目录下的 service 具有保活能力
/system/app:系统应用安装路径,权限略低于 priv-app 目录下的应用,放置比如厂商内置应用
/data/app:用户应用安装路径,应用安装时将 apk 复制到此目录下
/data/data:用户应用数据存放路径,存在沙箱隔离
/data/dalvik-cache:存放应用的dex 文件
/data/system:存放应用安装相关文件

packages.xml 是一个应用的注册表,在解析应用时创建,有变化时更新,记录系统权限,各应用信息,如name, codePath, flag, version, userid,下次开机时直接读取并添加到内存列表
package.list 指定应用的默认存储位置,userid 等

  1. 应用安装过程总结

将应用 apk 拷贝到指定目录下
解压 apk,将 dex 文件拷贝到 /data/dalvik-cache 目录,创建 /data/data/ 数据目录
解析 AndroidManifest.xml 及其他资源文件,提取应用包信息,注册到 packags.xml 中
由 Launcher 进程通过 PMS 取出所有应用程序,展示在桌面上

上一篇 下一篇

猜你喜欢

热点阅读