1.一種開機方法,應用于Android智能設備,其特征在于,包括以下步驟:
在Zygote創(chuàng)建的SystemServer進程中啟動ActivityManagerService;
ActivityManagerService發(fā)送用于啟動第一優(yōu)先級系統(tǒng)服務或系統(tǒng)應用的自定義BOOT_P0廣播;
在所述自定義BOOT_P0廣播發(fā)出后的預設時間之后,發(fā)送用于啟動第二優(yōu)先級系統(tǒng)服務或系統(tǒng)應用的自定義BOOT_P1廣播;
在所述自定義BOOT_P1廣播發(fā)出后的預設時間之后,發(fā)送用于啟動第三方應用和/或第三優(yōu)先級系統(tǒng)服務的源生ACTION_BOOT_COMPLETED廣播。
2.如權利要求1所述的開機方法,其特征在于,所述在所述自定義BOOT_P1廣播發(fā)出預設時間之后,發(fā)送用于啟動第三方應用和/或第三優(yōu)先級系統(tǒng)服務的源生ACTION_BOOT_COMPLETED廣播的步驟之后,還包括:
所述第三方應用和/或第三優(yōu)先級系統(tǒng)服務依據(jù)在receivers隊列中的優(yōu)先級順序接收所述源生ACTION_BOOT_COMPLETED廣播并啟動。
3.如權利要求2所述的開機方法,其特征在于,所述第三方應用和/或第三優(yōu)先級系統(tǒng)服務依據(jù)在receivers隊列中的優(yōu)先級順序接收所述源生ACTION_BOOT_COMPLETED廣播并啟動的步驟包括:
分別用數(shù)組保存每一第三方應用和/或第三優(yōu)先級系統(tǒng)服務的結(jié)構(gòu)體,形成receivers隊列;
依據(jù)每一第三方應用和/或第三優(yōu)先級系統(tǒng)服務的結(jié)構(gòu)體,利用broadcastIntentLocked在receivers隊列中進行優(yōu)先級排序;
實時更新receivers隊列中每一第三方應用和/或第三優(yōu)先級系統(tǒng)服務所對應的數(shù)組信息;
依據(jù)更新后的數(shù)組信息調(diào)整第三方應用和/或第三優(yōu)先級系統(tǒng)服務在receivers隊列中的優(yōu)先級順序。
4.如權利要求3所述的開機方法,其特征在于,所述結(jié)構(gòu)體的元素包括用戶使用頻率、開機絕對時間、Activity名稱及用戶使用時間。
5.如權利要求1所述的開機方法,其特征在于,所述預設時間的預設過程包括以下步驟:
檢測智能設備的硬件配置和自定義BOOT_P0廣播或自定義BOOT_P1廣播啟動的服務數(shù)量;
根據(jù)智能設備的硬件配置和自定義BOOT_P0廣播或自定義BOOT_P1廣播啟動的服務數(shù)量,調(diào)試自定義BOOT_P0廣播和自定義BOOT_P1廣播之間的時間間隔。
6.一種開機裝置,其特征在于,該開機裝置包括:
ActivityManagerService啟動模塊,在Zygote創(chuàng)建的SystemServer進程中啟動ActivityManagerService;
自定義BOOT_P0廣播發(fā)送模塊,利用ActivityManagerService發(fā)送用于啟動第一優(yōu)先級系統(tǒng)服務或系統(tǒng)應用的自定義BOOT_P0廣播;
自定義BOOT_P1廣播發(fā)送模塊,在所述自定義BOOT_P0廣播發(fā)出預設時間之后,發(fā)送用于啟動第二優(yōu)先級系統(tǒng)服務或系統(tǒng)應用的自定義BOOT_P1廣播;及
源生ACTION_BOOT_COMPLETED廣播發(fā)送模塊,在所述自定義BOOT_P1廣播發(fā)出預設時間之后,發(fā)送用于啟動第三方應用或第三優(yōu)先級系統(tǒng)服務的源生ACTION_BOOT_COMPLETED廣播。
7.如權利要求6所述的開機裝置,其特征在于,該優(yōu)化裝置還包括:
源生ACTION_BOOT_COMPLETED廣播接收模塊,控制所述第三方應用和/或第三優(yōu)先級系統(tǒng)服務依據(jù)在receivers隊列中的優(yōu)先級順序接收所述源生ACTION_BOOT_COMPLETED廣播并啟動。
8.如權利要求7所述的開機裝置,其特征在于,所述源生ACTION_BOOT_COMPLETED廣播接收模塊包括:
receivers隊列形成單元,分別用數(shù)組保存每一第三方應用和/或第三優(yōu)先級系統(tǒng)服務的結(jié)構(gòu)體,形成receivers隊列;
優(yōu)先級排序單元,依據(jù)每一第三方應用和/或第三優(yōu)先級系統(tǒng)服務的結(jié)構(gòu)體,利用broadcastIntentLocked在receivers隊列中進行優(yōu)先級排序;
數(shù)組信息更新單元,實時更新receivers隊列中每一第三方應用和/或第三優(yōu)先級系統(tǒng)服務所對應的數(shù)組信息;及
優(yōu)先級順序調(diào)整單元,依據(jù)更新后的數(shù)組信息調(diào)整第三方應用和/或第三優(yōu)先級系統(tǒng)服務在receivers隊列中的優(yōu)先級順序。
9.如權利要求8所述的開機裝置,其特征在于,所述結(jié)構(gòu)體的元素包括用戶使用頻率、開機絕對時間、Activity名稱及用戶使用時間。
10.如權利要求6所述的開機裝置,其特征在于,該開機裝置還包括:
檢測模塊,檢測智能設備的硬件配置和自定義BOOT_P0廣播或自定義BOOT_P1廣播啟動的服務數(shù)量;及
調(diào)試模塊,根據(jù)智能設備的硬件配置和自定義BOOT_P0廣播或自定義BOOT_P1廣播啟動的服務數(shù)量,調(diào)試自定義BOOT_P0廣播和自定義BOOT_P1廣播之間的時間間隔。
11.一種Android智能設備,其特征在于,該Android智能設備包括如權利要求6-10任一項所述的開機裝置。