作者:Yogi
前言:因为最近想要在Launcher中使用自定义的服务,开始时理所当然地认为系统应该先发送开机广播,再把Launcher启动,所以把服务的启动放在开机广播接收者中,这样在Launcher中使用服务时,拿到的对象总是空的。
结论:Launcher先启动后,系统再发送开机广播。
验证方法:
1.在Launcher的启动Activity的onCreate()方法中添加打印
2.在Launcher中添加开机广播接收者并添加接收广播的权限,在onReceive()方法中添加打印
3.重启机器,查看打印
你可以看到,onCreate()方法中的打印先打印出来,再是onReceive()方法中的打印。所以可以推断出,系统先启动Launcher,后发送开机广播。