`
dowhathowtodo
  • 浏览: 777908 次
文章分类
社区版块
存档分类
最新评论

Android广播的一些事

 
阅读更多

1. 开机启动广播

大家都知道,1.申请权限 2.注册广播

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

<receiver   android:name=".StartServiceAtBootReceiver"
  android:enabled="true" 
  android:exported="false"
  android:label="StartServiceAtBootReceiver">
  <intent-filter>
    <action android:name="android.intent.action._BOOT_COMPLETED"/>
   </intent-filter>
</receiver>

实际上, 不申请以下权限, 开机一样会启动。这可能是android的一个Bug。

android.permission.RECEIVE_BOOT_COMPLETED

参考:http://stackoverflow.com/questions/4635353/is-android-permission-receive-boot-completed-not-required


2. 屏幕开启/关闭广播

在Manifest.xml中注册不行,在代码中注册才行.

<receiver android:name="IntentReceiver">
                    <intent-filter>
                            <action android:name="android.intent.action.SCREEN_ON"></action>
                    </intent-filter>
                </receiver>

像这样注册,当屏幕点亮时,是无法接收到广播的。只有这样才行..

registerReceiver(new BroadcastReceiver() {

  @Override
  public void onReceive(Context context, Intent intent) {
    // ... 
  }
}, new IntentFilter(Intent.ACTION_SCREEN_ON));

3.




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics