Android的广播初步了解

我在看一些关于广播的基础的时候,总是看到不明不白的,直到后来真正用到了,才明天广播的强大,至少目前为止我是认为它强大的。

在要接收广播的Activity中添加内部类继承于BroadcastReceiver类:

	class DeleteMailsReceiver extends BroadcastReceiver {

		@Override
		public void onReceive(Context context, Intent intent) {
			boolean result = intent.getBooleanExtra("result", false);
			if (result) {
				Toast.makeText(ActMailShow.this, "删除成功!", 100);
			} else {
				Toast.makeText(ActMailShow.this, "删除失败……", 100);
			}

		}

	}
然后在使用的类中声明以上类:
	private DeleteMailsReceiver deleteRece;

在onCreate中初始化:

	deleteRece = new DeleteMailsReceiver();
让使用的Activity重载Activity的onStart函数和onStop函数:

	@Override
	protected void onStart() {
		super.onStart();
		LocalBroadcastManager.getInstance(this).registerReceiver(deleteRece,
				new IntentFilter("MU_MAIL_DELETEMAILS_RESULT"));
	}

	@Override
	protected void onStop() {
		super.onStop();
		LocalBroadcastManager.getInstance(this).unregisterReceiver(deleteRece);
	}
以上就是在接收广播的时候要的代码。当需要完成一个任务的时候,就调用其他类为其完成任务,然后就发送广播,广播中包含了所需的信息,继续在这个Activity中根据得到结果进行处理。比如如上要完成删除任务,在调用数据库中相关函数删除之后要返回是不是已经成功删除了,在根据石佛已经成功删除显示出不同的Toast。

发送广播是在一个继承Service的类实现的,在完成了任务后就要发送广播到调用的Activity类:

		Intent i = new Intent("MU_MAIL_DELETEMAILS_RESULT");
		i.putExtra("result", result);//result是成功与否的标识
		LocalBroadcastManager.getInstance(this).sendBroadcast(i);
如上就是广播机制的一个应用。






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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值