前言
最近接到一個項目需求,要求定制的 APP 開機啟動,并且只能使用這個 APP ,在網(wǎng)上搜了很多資料。說將APP做成 launcher 替換掉 系統(tǒng)的 launcher 就可以開機啟動,并只能使用這個APP了。廢話不說,上圖上代碼。
一. 簡易 launcher 的開發(fā)
只需要在自己開發(fā)的APP的AndroidManifest中添加兩句代碼:
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />

androidManifest.png
這樣一個簡單的launcher APP 就搞定了,是不是太簡單了。
在安裝完成以后重啟手機,系統(tǒng)會讓選擇是使用系統(tǒng)的 launcher 還是自己的 launcher 。

系統(tǒng)啟動launcher.png
選擇始終以后每次開機就會啟動自己的launcher APP,這樣做是簡單,但弊端是:用戶如果卸載了這個APP或恢復(fù)出廠設(shè)置以后,那么就會啟用系統(tǒng)的 launcher 。做不到防止修改的作用。
二. 刪除系統(tǒng) launcher
只有刪除了系統(tǒng) launcher 以后,用自己的 launcher APP去代替系統(tǒng)的 launcher 就可以做到比較完善的地步。
刪除系統(tǒng) launcher 有兩種方式:
- 簡單版的:使用root 工具獲取權(quán)限以后卸載系統(tǒng) launcher 。弊端:獲取root權(quán)限以后用戶可以隨意卸載APP,包括自己寫的 launcher ;但root 的后果請自行考慮?。?!
- 修改Android系統(tǒng)源碼,從中刪除 系統(tǒng) launcher 相關(guān)文件。(修改系統(tǒng)源碼正在學(xué)習(xí)中......)