1.在SystemServer中启动PackageManagerService.main

2.newPackageManagerService()并添加到ServiceManager中

3.newinstaller(建立installer和installd的socket连接,最终在底层实现install,remove,dexopt等功能)

4.通过systemConfig获取到xml文件中信息

5.创建PackageHandler Message Looper(安装/卸载请求)

6.readPLW()(读取data/system/packages.xml)

7.

检查/system/etc/permissions/platform.xml中定制的library及/system/framework下的jar档案是否需要dex提取进行优化。

若需要优化,会调用installer.dexopt提取dex到/data/dalvik-cache中

8.调用scanDirLI扫描存放apk的各个目录

9.系统应用安装—通过scanPackageLI逐一解析AndroidManifest.xml文件,建立每个apk的配置结构,并将apk配置信息添加到全局列表进行管理。

10.调用writeLPr()从全局列表中将apk信息写到packages.xml和packages.list中。

最新文章

  1. 创建 MIME 类型////////////zzz
  2. 布局 - layout
  3. Azure IaaS 用户手册 - 第一部分
  4. Java初学--无限循环
  5. 使用过的Linux命令
  6. 51Nod 1405 树的距离之和 (树dp)
  7. DNS服务器搭建
  8. linux 文件在磁盘上的表示
  9. Spark Streaming揭秘 Day9 从Receiver的设计到Spark框架的扩展
  10. ashx文件结合ajax使用(返回json数据)
  11. HDOJ 1098 Ignatius's puzzle
  12. 2013腾讯编程马拉松初赛第〇场(3月20日)湫湫系列故事——植树节 HDOJ 4503
  13. PHP正则提取HTML中img的url值
  14. [GDUT 决赛]--GCD,LCM——我是好人(数论)
  15. [WPF] 动画Completed事件里获取执行该动画的UI对象
  16. Excel 删除所有错误公式
  17. 【Loadrunner】初学Loadrunner——参数化设置(Xml类型)
  18. HDU 2188 悼念512汶川大地震遇难同胞——选拔志愿者(基础巴什博奕)
  19. 《第一行代码 android》 读书笔记:找出当前界面对应的Activity
  20. ISP PIPLINE (九_2) Denoise 之 time domain denoise

热门文章

  1. 在树莓派上编译安装golang环境
  2. my discipline life
  3. Angular02 通过angular-cli来搭建web前端项目
  4. AdaBoostRegressor
  5. 浴室沉思:聊聊DAL和Repository
  6. 【批处理学习笔记】第十四课:常用DOS命令(4)
  7. Playrix Codescapes Cup (Codeforces Round #413, rated, Div. 1 + Div. 2)(A.暴力,B.优先队列,C.dp乱搞)
  8. 安装myeclipse后,打开时弹出:“该站点安全证书的吊销证书不可用”,怎样解决?
  9. sublimeserver启动本地服务器(sublime text)
  10. VIM 文件搜索与替换