首页 > 其他 > 详细

关于SDK>=26之后静态广播失效问题(Background execution not allowed: receiving Intent)

时间:2019-02-08 14:54:51      阅读:986      评论:0      收藏:0      [点我收藏+]

 在 SDK 26,通过令静态注册的广播接收器失效 以限制后台过多应用启动,接受广播等情况。

当运行时,会有以下LOG:

Background execution not allowed: receiving Intent

 

1.  如果是自己编写发送广播,可以通过 以下方式使广播工作

  (1) 

if(Build.VERSION.SDK_INT >= 26){
  //参数1-包名 参数2-广播接收者所在的路径名
  ComponentName componentName=new ComponentName(getApplicationContext(),"com.code.tx1n.tochat.MessageReceiver"); 
  
  myIntent.setComponent(componentName); }

  (2)  

 if(Build.VERSION.SDK_INT >= 26){

   //此方法功能更强大一些,但硬编码存在隐患

  myIntent.addFlags(0x01000000);

2. 如果是接收隐式Intent,则只能通过动态注册广播接收器解决

  

关于SDK>=26之后静态广播失效问题(Background execution not allowed: receiving Intent)

原文:https://www.cnblogs.com/xfdmyghdx/p/10356154.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!