参考http://blog.csdn.net/luoshengyang/article/details/6767736
Android应用程序启动过程中,会启动一个应用程序管理服务PackageManagerService,这个服务
负责扫描系统特定的目录,找到里面的应用程序文件,然后对这些文件进行解析,得到相关信息
,完成应用程序的安装过程。
1.SystemServer.main
2.SystemServer.init1:这个函数是JNI方法
3.SystemServier.init2:该函数创建了ServerThread线程,PackageManagerService服务启动
4.SystemThead.run
5.PackageManagerSerive.main:scanDirLI函数会扫描 五个文件夹
/system/framework
/system/app
/vendor/app
/data/app
/data/app-private
9.PackageManagerService.scanDirLI
10.PackageManagerService.scanPackageLI
11.PackageParse.parsePackage
12.PackageParse.parseApplication
13…PackageManagerService.scanPackageLI:将解析到的信息保存到PackageManagerService服务中。