美文网首页
BroadCastReciver广播

BroadCastReciver广播

作者: 金馆长说 | 来源:发表于2017-03-02 18:36 被阅读9次
    • BroadcastReceiver广播组件
      1.可以用来接收一些广播比如系统广播,和自定义广播

      1. 二种注册方式
        动态注册:不是常驻广播程序退出后就会收不到广播了
        静态注册xml注册:常驻广播程序退出了只要注册了广播,就可以接收到广播的通知。
    • 二种发送方式

    1. 无序广播发送: 只要注册了广播都可以接收到不能拦截,没有优先级,除非设置了优先级的值。

    2. 有序广播发送:广播可以被拦截,值可以被修改,可以被终止。priority值
      -1000到1000越大谁越来先接收到广播。

      注意:所谓广播肯定需要先 1.注册广播 2.在有一个接收。3.然后在发送

        //创建接收器
        public class MyBroadCast extends BroadcastReceiver {
    
            @Override
            public void onReceive(Context context, Intent intent) {
                Toast.makeText(BarodCast.this, "广播", Toast.LENGTH_SHORT).show();
                getResultData()//获取数据
                setResultData();//修改数据
                abortBroadcast();//结束广播,后面的接收不到会。
            }
        }
    
    
       //动态注册,不是常驻广播。
        public void registerBroadCast() {
            IntentFilter filter = new IntentFilter();
            filter.addAction("com.guangbo");//设置过滤,不设置会收不到。
            registerReceiver(new MyBroadCast(), filter);
        }
    
    
        //静态注册常驻广播
           <receiver android:name=".broadcast.TestBroadcast">
                <intent-filter android:priority="1">
                    <action android:name="com.guangbo"></action>
                </intent-filter>
            </receiver>
    
         //发送有序广播广播
        public void sendBroadCast() {
            Intent in = new Intent();
            in.setAction("com.guangbo");//设置过滤,不设置会收不到。
            sendBroadcast(in);
        }
    
    
    
    

    相关文章

      网友评论

          本文标题:BroadCastReciver广播

          本文链接:https://www.haomeiwen.com/subject/crekgttx.html