安卓内部原理

3
我只需要在我的项目中得到一点帮助。请问在安卓设备启动时,安卓是如何加载所有应用程序的?它在哪里读取apk并检索应用程序信息(例如图标和名称),最终显示到设备上?
我查看了packagemanager -> applicationpackagemanager -> Ipackagemanager.aidl -> packagemanagerservice -> settings.java,但我无法弄清楚安卓如何从apk中提取信息以及如何在启动时加载。
如果有人能够帮忙,那真的太好了。
1个回答

3

我不知道具体发生在哪里,但据我所知:

在启动期间:Android会遍历/data/apps/*.apk,提取/读取AndroidManifest.xml并保存一些信息(例如/data/system/packages.listpackages.xml

应该由PackageParser.java完成软件包(.apk)解析。

应用程序列表可能是从这些列表中之一读取的,当您打开应用程序抽屉时,它们将被缓存到内存中。图标是按需提取并缓存的。您在启动器中看到的图标/应用程序存储在其他位置。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接