广播
来源:互联网 发布:统计分析软件怎么安装 编辑:程序博客网 时间:2024/04/28 21:53
笼统一点讲就是用来传输数据的。具体一点说就是:
1.实现了不同的程序之间的数据传输与共享,因为只要是和发送广播的action相同的接受者都能接受这个广播。典型的应用就是android自带的短信,电话等等广播,只要我们实现了他们的action的广播,那么我们就能接收他们的数据了,以便做出一些处理。比如说拦截系统短信,拦截骚扰电话等等
2.起到了一个通知的作用,比如在service中要通知主程序,更新主程序的UI等。因为service是没有界面的,所以不能直接获得主程序中的控件,这样我们就只能在主程序中实现一个广播接受者专门用来接受service发过来的数据和通知了。
public
class
MainActivity
extends
Activity
implements
OnClickListener {
14
15
MyReceiver myReceiver;
16
IntentFilter intentFilter;
17
EditText etReceivedBroadcast;
18
Button btnSendBroadcast;
19
@Override
20
protected
void
onCreate(Bundle savedInstanceState) {
21
super
.onCreate(savedInstanceState);
22
setContentView(R.layout.activity_main);
23
24
etReceivedBroadcast = (EditText) findViewById(R.id.etReceivedBroadcast);
25
btnSendBroadcast = (Button) findViewById(R.id.btnSendBroadcast);
26
27
//keep reference to Activity context
28
MyApplication myApplication = (MyApplication)
this
.getApplicationContext();
29
myApplication.mainActivity =
this
;
30
31
btnSendBroadcast.setOnClickListener(
this
);
32
33
myReceiver =
new
MyReceiver();
34
intentFilter =
new
IntentFilter(
"com.hmkcode.android.USER_ACTION"
);
35
}
36
37
@Override
38
protected
void
onResume() {
39
super
.onResume();
40
registerReceiver(myReceiver, intentFilter);
41
42
}
43
@Override
44
protected
void
onPause() {
45
super
.onPause();
46
unregisterReceiver(myReceiver);
47
}
48
49
50
@Override
51
public
void
onClick(View view) {
52
53
Intent intnet =
new
Intent(
"com.hmkcode.android.USER_ACTION"
);
54
sendBroadcast(intnet);
55
56
}
57
58
}
public
class
MyReceiver
extends
BroadcastReceiver{
08
09
@Override
10
public
void
onReceive(Context context, Intent intent) {
11
MainActivity mainActivity = ((MyApplication) context.getApplicationContext()).mainActivity;
12
mainActivity.etReceivedBroadcast.append(
"broadcast: "
+intent.getAction()+
"\n"
);
13
}
14
15
}
0 0
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播:
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- UITableView常用操作
- Activity与Fragment的生命周期
- Android组件——广播
- 【noip2012】同余方程
- 搞清楚脚本中这些函数的调用规律 .
- 广播
- html表格及样式 长年复制用
- NSOperationQueue
- JAVA MAIL发送邮件实例
- sql语句获取本周、上一周、本月数据
- Nand flash uboot 驱动研究
- Shell脚本实现每个工作日定时执行指定程序
- Eclipse maven android开发指南
- java进阶(三)------java编程规范---代码质量检测工具FindBugs、PMD和CheckStyle对比