当前位置:网站首页>BroadCast Receiver(广播)详解
BroadCast Receiver(广播)详解
2022-08-05 05:15:00 【suiyue010211】
目录
2.在AndroidManifest.xml中写入静态接收名

BroadCast Receiver是四大组件之一,是一个全局的监听器
BroadCast Receiver有两大功能,广播发送者,广播接收者
BroadCast Receiver分为静态广播和动态动态广播
静态广播
1.首先在这边创建广播接收器

2.在AndroidManifest.xml中写入静态接收名
<receiver
android:name=".MyStaiticReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="wzk" />
</intent-filter>
</receiver>3.在主方法把广播发送给静态广播接收者
btn_sendstatic=findViewById(R.id.btn_sendstatic);
btn_sendstatic.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//发送广播给静态广播接收者
Intent intent=new Intent();
//在Android8.0以上就不支持静态广播了,需要加一个这个
intent.setPackage(getPackageName());
intent.setAction("wzk");
intent.putExtra("info","你好");
sendBroadcast(intent);
}
}); btn_sendstatic=findViewById(R.id.btn_sendstatic);
btn_sendstatic.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//发送广播给静态广播接收者
Intent intent=new Intent();
intent.setPackage(getPackageName());
intent.setAction("wzk");
intent.putExtra("info","你好");
sendBroadcast(intent);
}
});4.在广播接收器里面接收广播
Log.i("MyStaiticReceiver","接收到的值是"+intent.getStringExtra("info"));动态广播:
1.创建广播继承BroadcastReceiver
class MyDymnicReveiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Log.i("动态广播接收者",intent.getStringExtra("info"));
}
}2.在主方法注册动态广播
//注册动态广播
myDymnicReveiver=new MyDymnicReveiver();
IntentFilter intentFilter=new IntentFilter();
intentFilter.addAction("666");
registerReceiver(myDymnicReveiver,intentFilter);3.发送给动态广播
//发送给动态的广播
btn_send = findViewById(R.id.btn_send);
btn_send.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent();
intent.setAction("666");
intent.putExtra("info","动态广播你好");
sendBroadcast(intent);
}
});4.反注册
@Override
protected void onDestroy() {
super.onDestroy();
if (myDymnicReveiver!=null){
unregisterReceiver(myDymnicReveiver);
}
}边栏推荐
- Do you use tomatoes to supervise your peers?Add my study room, come on together
- redis persistence
- What are the characteristics of the interface of the physical layer?What does each contain?
- 数据库期末考试,选择、判断、填空题汇总
- 基于Flink CDC实现实时数据采集(一)-接口设计
- flink基本原理及应用场景分析
- ES6基础语法
- Flink EventTime和Watermarks案例分析
- 【过一下14】自习室的一天
- 【NFT网站】教你制作开发NFT预售网站官网Mint作品
猜你喜欢

第四讲 反向传播随笔
![[Study Notes Dish Dog Learning C] Classic Written Exam Questions of Dynamic Memory Management](/img/0b/f7d9205c616f7785519cf94853d37d.png)
[Study Notes Dish Dog Learning C] Classic Written Exam Questions of Dynamic Memory Management

vscode+pytorch use experience record (personal record + irregular update)

Flutter 3.0升级内容,该如何与小程序结合

BFC详解(Block Formmating Context)

Calling Matlab configuration in pycharm: No module named 'matlab.engine'; 'matlab' is not a package
![[Go through 8] Fully Connected Neural Network Video Notes](/img/0a/8b2510b5536621f402982feb0a01ef.png)
[Go through 8] Fully Connected Neural Network Video Notes

Flink 状态与容错 ( state 和 Fault Tolerance)

解决端口占用问题

flink yarn-session的两种使用方式
随机推荐
Flink HA安装配置实战
HQL语句执行过程
Flink Broadcast 广播变量
转正菜鸟前进中的经验(废话)之谈 持续更新中... ...
vscode+pytorch use experience record (personal record + irregular update)
ES6 生成器
软件设计 实验四 桥接模式实验
Flink accumulator Counter 累加器 和 计数器
Web Component-处理数据
range函数作用
通过Flink-Sql将Kafka数据写入HDFS
怎么更改el-table-column的边框线
【记一下1】2022年6月29日 哥和弟 双重痛苦
数据库实验五 备份与恢复
【Over 16】Looking back at July
Flink 状态与容错 ( state 和 Fault Tolerance)
NodeJs接收上传文件并自定义保存路径
ES6基础语法
flink yarn-session的两种使用方式
day11-函数作业