上节学习了怎样创建一个广播。也尝试接受系统打电话的广播。

本节课学习怎样自己定义广播。自己定义广播实质上也就是创建一个发送广播者,创建一个接受该广播者。

那我们就開始行动吧。

先创建一个发送广播的应用:

public class MainActivity extends Activity {

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
} public void sendBroadcast(View v)
{
//广播发送也是採用的intent发送,数据也是採用intent传值
Intent intent = new Intent();
//设置此广播的action。用于接收者介绍
intent.setAction("com.demo.broadcastReceiver");
//设置广播的数据
intent.putExtra("broadcast", "您好,您本月收到3wRMB工资!! ! ");
//发送广播
sendBroadcast(intent);
}
}

当点击发送广播的button,就会发送一条自己定义的广播

接着创建还有一个应用用于接收广播:

public class MyBroadcastReceiver extends BroadcastReceiver {

	@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
//得到广播的数据
Bundle data = intent.getExtras();
String broadString = data.getString("broadcast"); //显示
Toast.makeText(context, broadString, 0).show();
}
}

记得此广播接受者必需要清单文件里配置:

        <receiver android:name="com.demo.broadcastreceiveractivity.MyBroadcastReceiver">
<intent-filter>
<action android:name="com.demo.broadcastReceiver"/>
</intent-filter>
</receiver>

广播接受者的action必须和自己定义时候设置的action一样。不然就会介绍不到广播的

演示效果例如以下:

能够从上图看到,的确是收到了自己定义的广播。

Android 四大组件学习之BroadcastReceiver二的更多相关文章

  1. Android 四大组件学习之BroadcastReceiver一

    本节课学习四大组件最后一个, 广播接受者. 顾名思义广播接受者就是接受广播呗.比方在现实社会中,曾经每一个人家都有一台收音机,这可就能够去接受广播发出来的消息.大家都知道.程序世界也是參照的显示生活设 ...

  2. Android 四大组件学习之BroadcastReceiver三

    本节学习广播的分类. 广播分为无序广播和有序广播 无序广播: 广播发送者的action与广播接收者的action都匹配的话,所以广播介绍者都能够收到这条广播,而且没有先后顺序,能够觉得是同一时候收到 ...

  3. Android 四大组件学习之BroadcastReceiver四

    本节学习系统中特殊的广播接收者. 我们前面几节不是说了,当广播接受者一旦注冊到系统中,当系统发送的广播和你注冊的广播的action匹配时,系统就会启动广播接收者所在的进程.除非用户手动停止广播接收者所 ...

  4. Android 四大组件学习之ContentProvider二

    上节学习了什么是ContentProvider.以及ContentProvider的作用.以及什么是URL.本节就对上节学习的知识做一个实践,也就是定义自己的ContentProvider 好.实践是 ...

  5. Android 四大组件之 Activity(二)

    1.综述 Activity是Android四大组件(Application Components)之一,简单来说Activity就是平常所见到的用户界面,一般情况下,一个Activity所占的窗口是满 ...

  6. Android 四大组件学习之Server一

    上次学习了Android四大组件Activity之后,我们深刻理解了Activity.这次我们学习四大组件Service. Service与Activity的级别是一样的,都是Android系统不可缺 ...

  7. android四大组件学习总结以及各个组件示例(1)

    android四大组件分别为activity.service.content provider.broadcast receiver. 一.android四大组件详解 1.activity (1)一个 ...

  8. Android学习之路——Android四大组件之activity(二)数据的传递

    上一篇讲了activity的创建和启动,这一篇,我们来讲讲activity的数据传递 activity之间的数据传递,这里主要介绍的是activity之间简单数据的传递,直接用bundle传递基本数据 ...

  9. Android四大组件之一:BroadCastReceiver(广播接收者)

    广播接受者是(BroadCastReceiver)是Android中的地大组件之一,之前学习了一些关于BroadCastReceiver方面的知识,今天回过头来发现已经快忘记的差不多了,毕竟现在是刚开 ...

随机推荐

  1. HDU 1029 Ignatius and the Princess IV(数论)

    #include <bits/stdc++.h> using namespace std; int main(){ int n; while(~scanf("%d",& ...

  2. AtCoder Grand Contest 023 A - Zero-Sum Ranges

    Time limit : 2sec / Memory limit : 256MB Score : 200 points Problem Statement We have an integer seq ...

  3. English distilled

    [ Any question about the job]关于辞职原因 1. What are the main objectives and responsibilities of the posi ...

  4. [BZOJ5465][APIO2018]选圆圈(KD-Tree)

    题意:给你n个圆,每次选择半径最大的,将它和与它相交的圆全部删去,输出每个圆是在哪次被删的. KD树模板题.用一个矩形框住这个圆,就可以直接剪枝了.为了防止被卡可以将点旋转一个角度,为了保险还可以多转 ...

  5. small test on 5.30 night T1

    数学题使劲推就对了. 让我们设  g(x) = ∑ C(i,x) * b^i ,然后后面验算了一张纸QWQ,懒得再打一遍了,回家我就把这张演算纸补上QWQ,先上代码. #include<cstd ...

  6. Codeforces 919 E Congruence Equation

    题目描述 Given an integer xx . Your task is to find out how many positive integers nn ( 1<=n<=x1&l ...

  7. 【分类讨论】Codeforces Round #395 (Div. 2) D. Timofey and rectangles

    D题: 题目思路:给你n个不想交的矩形并别边长为奇数(很有用)问你可以可以只用四种颜色给n个矩形染色使得相接触的 矩形的颜色不相同,我们首先考虑可不可能,我们分析下最多有几个矩形互相接触,两个时可以都 ...

  8. 【点分治】hdu5016 Mart Master II

    点分治好题. ①手动开栈. ②dp预处理每个点被哪个市场控制,及其距离是多少,记作pair<int,int>数组p. ③设dis[u].first为u到重心s的距离,dis[u].seco ...

  9. 1.10(java学习笔记)super关键字

    supe主要是调用父类中被重写的方法及属性. 用下列代码那说明: package cn.hcf.TestSuper; public class TestSuper { public static vo ...

  10. JavaBean的详细及引用

    1.JavaBean实际是具有统一接口格式的java类 2.JavaBean的组成:属性(Properties).方法(Method).事件(Events) 3.一个JavaBean的例子(该例子是用 ...