zoukankan      html  css  js  c++  java
  • Android BroadcastReceiver应用

    1. 创建Receiver,两种方式,动态和静态:

      (1)静态注册:

     首先自定义个Receiver,

    public class MyReceiver extends BroadcastReceiver {

        @Override
        
    public void onReceive(Context context, Intent intent) {
            
    // TODO Auto-generated method stub
            Toast.makeText(context, "MyReceiver broadcast"10000).show();
        }

    }

    然后在AndroidManifest注册即可:

            <receiver android:name=".MyReceiver">
                
    <intent-filter>
                    
    <action android:name="com.test.broadcasting" />
                
    </intent-filter>
            
    </receiver>

      (2)动态注册:

        private void regReceiver() {
            IntentFilter intentFilter 
    = new IntentFilter();
            intentFilter.addAction(
    "com.test.broadcasting");
            
    // 注册BroadcastReceiver
            this.registerReceiver(receiver, intentFilter);

            
    // 取消注册
            
    // this.unregisterReceiver(receiver);
        }

        
    private BroadcastReceiver receiver = new BroadcastReceiver() {
            @Override
            
    public void onReceive(Context context, Intent intent) {
                Toast.makeText(context, 
    "receive broadcast"10000).show();
            }
        };

        2.发送广播:

    这个非常简单,只需一行代码即可:

    this.sendBroadcast(new Intent("com.test.broadcasting"));

    3. 应用场景:

      最常见的就是SD插拔的广播注册(android.content.Intent.ACTION_MEDIA_MOUNTED).

  • 相关阅读:
    PHP中空字符串介绍0、null、empty和false之间的关系
    腾迅股票数据接口 http/javascript
    PHP关于依赖注入(控制反转)的解释和例子说明
    Xcode离线安装帮助文档
    php对二维数组进行相关操作(排序、转换、去空白等)
    phpqrcode不能输出二维码
    Google Chrome浏览器中如何使用命令
    Mac OS X 懒人版安装教程(之前的图全部挂了,所以重发了)
    酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章)
    第三方支付过程中session失效问题
  • 原文地址:https://www.cnblogs.com/KiloNet/p/1916093.html
Copyright © 2011-2022 走看看