BreadCast的用法说明

每次系统Broadcast事件发生后,系统就会创建对应的BroadcastReceiver的实例,并自动触发它的onReceive()方法,onRecevie()方法执行完后,BroadcastReceiver的实例就被销毁
动态注册方法:

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    recevier = new myreceiver();
    intentFilter = new IntentFilter();
    intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
    //当网络发生变化的时候,系统广播会发出值为
    registerReceiver(recevier,intentFilter);
    }

继承:

public class myreceiver extend BroadcasetReceiver{
@override
pulic void onReceive(Context context,Intent intent){
Toast.......;
}
}

xml文件静态注册方法

    
    
   
          //开机完成后系统广播发出的一条值为android.intent.action.BOOT_COMPLETED的广播
 

用法:

       Intent intent = new Intent();
                intent.setAction("com.example.mymessage");
                //Intent intent = new Intent("com,example.mymessage");
                //也可以像注释这样写
                sendBroadcast(intent);//发送标准广播
        sendOrderedBroadcast(intent,null);//发送有序广播

1、静态注册
指的是在AndroidManifest.xml中用标签进行注册,并在标签内用标签设置过滤器,例如等。



    

    


2、动态注册
指的是在代码中进行注册,例如:

    IntentFilterfilter = new IntentFilter();

    filter.addAction(Intent.ACTION_PACKAGE_REMOVED);

    filter.addDataScheme(“package”);

当不再需要广播接收器时,要记得注销unregisterReceiver(),否则可能引起内存泄露。

你可能感兴趣的:(BreadCast的用法说明)