打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Android 无法获得 SCREEN_ON和SCREEN_OFF广播问题

转自:http://blog.csdn.net/huangliop/article/details/7290931

这两个事件有点特殊,Recevier的注册必须写在代码里面,不能也在在Manifest.xml文件里面。也就是是必须用非常驻型注册。

这样就代理一个问题:当软件退出后,这个Recevier就不会工做了,也就不能接收到广播的事件了。


解决办法是:将注册那段代码放在一个Service里面去进行,这样只要Service不停止,这个Recevier就会一直工作。

注册代码如下:

  1. ScreenOnBroadcastReciver sOnBroadcastReciver=new ScreenOnBroadcastReciver();
  2. IntentFilter recevierFilter=new IntentFilter();
  3. recevierFilter.addAction(Intent.ACTION_SCREEN_ON);
  4. recevierFilter.addAction(Intent.ACTION_SCREEN_OFF);
  5. registerReceiver(sOnBroadcastReciver, recevierFilter);
  1. ScreenOnBroadcastReciver sOnBroadcastReciver=new ScreenOnBroadcastReciver();  
  2. IntentFilter recevierFilter=new IntentFilter();  
  3. recevierFilter.addAction(Intent.ACTION_SCREEN_ON);  
  4. recevierFilter.addAction(Intent.ACTION_SCREEN_OFF);  
  5. registerReceiver(sOnBroadcastReciver, recevierFilter);  


 

上面说的这种情况,在Android里面还有一些。我目前只知道这两个广播。

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
定制个性化屏保
android中强行停止(forceStopPackage)对alarmManager、Receiver的影响
插入SD卡读取SD上内容,否则读取本地路径内容的代码
Android中ICS4.0源码Launcher启动流程分析【android源码Launc...
Android提高第十二篇之蓝牙传感应用
增加 addDataScheme("file") 才能收到SD卡插拔事件的原因分析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服