动态注册广播基本使用

来源:互联网 发布:有网络上不了网 编辑:程序博客网 时间:2024/05/22 07:39

       动态注册广播就是不在Manifest中写fliter,之所以这样是因为有时候需要监听该广播并响应。但是有时候又不需要监听,所以需要在代码中动态的注册广播并且当不需要的时候就取消注册。动态注册就不需要在XML中进行注册了

    下面以屏幕开启的广播监听为例:

 

public class ScreenReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {if (action.equals("android.intent.action.SCREEN_ON")) {Toast.make(context,"屏幕亮啦",Toast.LENGTH_SHORT).show();}}}

public class MainActivity extends Activity {private ScreenReceiver receiver;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);receiver = new ScreenReceiver();IntentFilter filter=new IntentFilter();filter.addAction("android.intent.action.SCREEN_ON");registerReceiver(receiver, filter);}@Overrideprotected void onDestroy() {super.onDestroy();unregisterReceiver(receiver);}}


0 0
原创粉丝点击