Android开机向导构建流程

  • 内容
  • 评论
  • 相关

前言

在设备首次开机的时候我们往往会给与用户一些操作提示,比如如何对焦、遥控器配对等,这个时候就需要一个界面在Launcher启动之前呈现给用户,这个界面就是所谓的开机向导,本质上开机向导就是一个普通apk,只不过在系统启动之前启动了而已,下面就简单介绍下如何配置一个Android应用为开机向导。

编码

首先,开机向导得在Launcher启动之前启动,所以其优先级必须必Launcher高,所以在AndroidManifest.xml中配置如下:

将本Activity配置为android.intent.category.HOME,然后优先级为1(越大优先级越高),这样我们的应用就会在Launcher之前启动了。

应用启动之后的流程就和普通应用一样了,可以在开机向导中启动其他app,由于开机向导只在系统第一次启动之前启动,所以开机向导关闭的时候需要将自己设置为不在启动。

同时需要告诉系统开机向导已经完成了,需要写入如下属性到系统中(需要系统权限)。

通过上面简单两步我们的apk就可以被当做开机向导了(apk需要系统签名)。

其他

使用shell命令可以直接获取上面最后写入的两个属性

需要注意的事,不管什么时候,我们一定要写入系统属性以及将自身设置为不可用,如果没有将自身设置为不可用,那么开机向导finish自己以后马上会被系统启动,如果没有写入系统上面贴出的两个属性,那么第二次开机将会出现异常(开机向导未完成,但是开机向导被设置为不可用了)。

参考:http://blog.csdn.net/hitbeauty/article/details/46827085

评论

0条评论

发表评论

电子邮件地址不会被公开。