zoukankan      html  css  js  c++  java
  • Android动态广播的注册与销毁

    一个内部类:BroadcastReceiver的子类,并定义收到广播之后的操作:

    1 class LockScreenBroadcastReceiver extends BroadcastReceiver{
    2 
    3         @Override
    4         public void onReceive(Context context, Intent intent) {
    5             //接收到广播之后的操作
    6             KLog.d("收到广播");
    7             LockScreenNightRestActivity.this.finish();
    8         }
    9     }

    定义action和BroadcastReceiver子类对象:

    1 //定义关闭此activity的action
    2     public static final String NIGHT_REST_ACTIVITY_FINISH = "night_rest_activity_finish";
    3     private LockScreenBroadcastReceiver broadcastReceiver;

    onCreate中注册:

     1 @Override
     2     protected void onCreate(Bundle savedInstanceState) {
     3         super.onCreate(savedInstanceState);
     4 
     5         // 1. 实例化BroadcastReceiver的子类对象
     6         broadcastReceiver = new LockScreenBroadcastReceiver();
     7         IntentFilter intentFilter = new IntentFilter();
     8         // 2. 设置接收广播的类型
     9         intentFilter.addAction(NIGHT_REST_ACTIVITY_FINISH);// 只有持有相同的action的接受者才能接收此广播
    10         // 3. 动态注册:调用Context的registerReceiver()方法
    11         registerReceiver(broadcastReceiver, intentFilter);
    12     }

    onDestroy中注销:

    1  //销毁onResume()中的广播
    2         unregisterReceiver(broadcastReceiver);
  • 相关阅读:
    DVWA系列のSQL注射
    DVWA系列のCSRF&文件包含
    PHPSTORM+Xdebug配置
    Django 从入门到忘记学习笔记
    <双十一特辑> 模拟登录学校教务处爬取全校女生资料和头像
    zzcms7.2漏洞挖掘学习
    laravel5.3搭建过程中出现问题
    kali-linux简单学习
    linux学习二(小随笔)
    linux学习一
  • 原文地址:https://www.cnblogs.com/ken9527just/p/11554909.html
Copyright © 2011-2022 走看看