为了账号安全,请及时绑定邮箱和手机立即绑定

在manifests中注册开机启动可以成功,但是在代码中注册开机启动不可以,这是为什么?

在manifests中注册开机启动可以成功,但是在代码中注册开机启动不可以,这是为什么?

Qyouu 2019-03-30 11:32:11
manifest中:代码中:IntentFilterintentFilter;BootCompleteReceiverbootCompleteReceiver;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);intentFilter=newIntentFilter();intentFilter.addAction("android.intent.action.BOOT_COMPLETED");bootCompleteReceiver=newBootCompleteReceiver();registerReceiver(bootCompleteReceiver,intentFilter);}都写了BootCompleteReceiverclassBootCompleteReceiverextendsBroadcastReceiver{@OverridepublicvoidonReceive(Contextcontext,Intentintent){Toast.makeText(context,"helloworld",Toast.LENGTH_SHORT).show();}}但是在manifest中可以实现开机toast,在代码中写的registerReceiver不能实现开机toast,这是为什么??
查看完整描述

2 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

动态注册和静态注册的区别。
manifest里的广播应该是在会在系统的全局广播列表里注册了;
代码注册的,只有在app启动执行了这段注册代码后才注册。
                            
查看完整回答
反对 回复 2019-03-30
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

因为刚开机的时候你的代码还没有运行
                            
查看完整回答
反对 回复 2019-03-30
  • 2 回答
  • 0 关注
  • 533 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信