跨进程通信之 Broadcast 篇

  • 发送广播

在应用程序中发送广播比较简单。只需要调用sendBroadcast方法即可,该方法需要一个Intent对象,通过Intent对象可以发送需要广播的数据。

/  通过Intent类的构造方法指定广播的ID
        Intent intent = new Intent("net.blogjava.mobile.MYBROADCAST");
        //  将要广播的数据添加到Intent对象中  
        intent.putExtra("text", editText.getText().toString());
        //  发送广播  
        sendBroadcast(intent);

发送广播并不需要在AndroidManifest.xml文件中注册,但接收广播必须在AndroidManifest.xml文件中注册 receiver。

  • 接收广播

java类

package net.blogjava.mobile.receiver;
... ...
public class MyReceiver extends BroadcastReceiver
{
    //  当sendbroadcast发送广播时,系统会调用onReceive方法来接收广播
    @Override
    public void onReceive(Context context, Intent intent)
{
    //  判断是否为sendbroadcast发送的广播
        if ("net.blogjava.mobile.MYBROADCAST".equals(intent.getAction()))
        {
            Bundle bundle = intent.getExtras();
            if (bundle != null)
            {
                String text = bundle.getString("text");
                Toast.makeText(context, "成功接收广播:" + text, Toast.LENGTH_LONG).show();
            }
        }
    }
}

_ 在AndroidManifest.xml文件中注册receiver_

<!--  注册receiver 
<receiver android:name="MyReceiver">
    <intent-filter>
        <action android:name="net.blogjava.mobile.MYBROADCAST" />
    </intent-filter>
</receiver>

转载于:https://my.oschina.net/fltsp/blog/710159

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值