2012-04-26 106 views
3

我只需要我的項目中的一點幫助。任何人都可以告訴Android如何在啓動時加載設備上的所有應用程序。它在哪裏讀取apk的檢索關於應用程序的信息,如圖標,名稱,並最終顯示在設備上。android內部結構

我經歷了packagemanager-> applicationpackagemanager-> Ipackagemanager.aidl-> packagemanagerservice-> settings.java,但我無法弄清楚android如何從apk中獲取信息,以及它如何在啓動時加載。

如果有人能幫上忙,那真是太好了。

回答

3

不知道那裏恰好發生,但據我所知:

在引導過程中:安卓經過/data/apps/*.apk,提取/讀取AndroidManifest.xml並保存一些信息(如/data/system/packages.listpackages.xml

包(.apk)解析應可以通過PackageParser.java

當您打開應用程序抽屜並在內存中緩存時,應用程序列表可能是從其中一個列表中讀取的。圖標按需提取並緩存。您在啓動器中看到的圖標/應用程序將存儲在其他位置。