Android自動運行失敗的原因分析

Android程序自動運行失敗的原因是因爲接收不到BOOT_COMPLETED廣播。而造成接收不到BOOT_COMPLETED廣播可能的原因可能有以下幾個方面:
(1)、BOOT_COMPLETED對應的action和uses-permission沒有一起添加
(2)、應用安裝到了sd卡內,安裝在sd卡內的應用是收不到BOOT_COMPLETED廣播的
(3)、系統開啓了Fast Boot模式,這種模式下系統啓動並不會發送BOOT_COMPLETED廣播
(4)、應用程序安裝後重來沒有啓動過,這種情況下應用程序接收不到任何廣播,包括BOOT_COMPLETED、ACTION_PACKAGE_ADDED、CONNECTIVITY_ACTION等等。
Android3.1之後,系統爲了加強了安全性控制,應用程序安裝後或是(設置)應用管理中被強制關閉後處於stopped狀態,在這種狀態下接收不到任何廣播。直到被啓動過(用戶打開或是其他應用調用)纔會脫離這種狀態,所以Android3.1之後
(1)、應用程序無法在安裝後自己啓動
(2)、沒有ui的程序必須通過其他應用激活才能啓動,如它的Activity、Service、Content Provider被其他應用調用。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章