Broadcast简单使用

Posted otaganyuki

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Broadcast简单使用相关的知识,希望对你有一定的参考价值。

Activity Service之间的通信单用intent有时候还是不能满足要求,毕竟intent只能在启动一个activity的时候传一点消息过去

这个时候就用到广播了,至此,四大组件Activity  Broadcast Service ContentProvider中终于用过三个了。。。当然目前只是粗略用过,具体实现不清楚,以后再研究吧

广播能进行进程间通信

用法如下(只是一种写法):

接收方:

class MyBroadcastReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent){
            //intent即为发送方传过来的intent
            }
        }
    }

private IntentFilter intentFilter=new IntentFilter();;
private MyBroadcastReceiver myBroadcastReceiver=new MyBroadcastReceiver();
intentFilter.addAction("MyBroadcastReceiver");//里面填的用于区分其他发送接收对象
registerReceiver(myBroadcastReceiver,intentFilter);

发送方

Intent intent=new Intent("MyBroadcastReceiver");
                intent.putExtra("MqttData",broadcastData);//这里存放信息
                sendBroadcast(intent);

注意intent传对象,对象需要实现Serializable接口

 

以上是关于Broadcast简单使用的主要内容,如果未能解决你的问题,请参考以下文章

angularjs中的事件传播$emit,$broadcast,$on

Android中Intent具体解释之使用Intent广播事件及Broadcast Receiver简单介绍

Service Broadcast简单音乐播放功能

Broadcast Dispatcher .resume() 函数 Discord JS v12 的问题

创建自己的代码片段(CodeSnippet)

Android入门第45天-手工发送一个BroadCast