前言
最近接到一个项目需求,要求定制的 APP 开机启动,并且只能使用这个 APP ,在网上搜了很多资料。说将APP做成 launcher 替换掉 系统的 launcher 就可以开机启动,并只能使用这个APP了。废话不说,上图上代码。
一. 简易 launcher 的开发
只需要在自己开发的APP的AndroidManifest中添加两句代码:
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
这样一个简单的launcher APP 就搞定了,是不是太简单了。
在安装完成以后重启手机,系统会让选择是使用系统的 launcher 还是自己的 launcher 。
选择始终以后每次开机就会启动自己的launcher APP,这样做是简单,但弊端是:用户如果卸载了这个APP或恢复出厂设置以后,那么就会启用系统的 launcher 。做不到防止修改的作用。
二. 删除系统 launcher
只有删除了系统 launcher 以后,用自己的 launcher APP去代替系统的 launcher 就可以做到比较完善的地步。
删除系统 launcher 有两种方式:
- 简单版的:使用root 工具获取权限以后卸载系统 launcher 。弊端:获取root权限以后用户可以随意卸载APP,包括自己写的 launcher ;但root 的后果请自行考虑!!!
- 修改Android系统源码,从中删除 系统 launcher 相关文件。(修改系统源码正在学习中......)