Android(安卓)广播接受者
16lz
2021-01-26
广播也是通过intent来传递的。
广播分为有序广播和标准广播。
标准广播是发送广播后,所有的广播接受者都可以去接收。
有序广播是发送广播后,由高优先级的先接收广播,处理后再往后广播,同时高优先级的接受者可以中断广播。
广播注册可以分为动态注册和静态注册。下面就先将静态注册。静态注册是新建广播接收者时,是通过new----->other------->Brodcast Receiver来实现的。AS会自动帮我们在Manifext.xml里注册好,我们只需要添加intent-filter及在里面加入action即可。
下面的例子是静态注入,发送一条标准广播,然后接收。
1、MainActivity
package com.yuanlp.sendbroadcast;import android.content.Intent;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void click(View view){ Intent intent=new Intent("com.yuanlp.sendBroadcast.MY_BROADCAST"); //设置intent的action sendBroadcast(intent); //发送广播 }}
2、 activity_main.xml里
<?xml version="1.0" encoding="utf-8"?>
3、MyReceiver
package com.yuanlp.sendbroadcast;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;public class MyReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Toast.makeText(context,"接收到广播",Toast.LENGTH_SHORT).show(); }}
4、Manifext.xml
<?xml version="1.0" encoding="utf-8"?>
运行程序后,在点击按钮后,自定义的广播 接受者会受到广播,并弹出toast
更多相关文章
- android窗体加载过程剖析之消息处理的注册机制
- Android(六)Activity、请求码与结果码、Intent、广播、服务
- Android随笔之——Android广播机制Broadcast详解
- android自动安装驱动
- Android(安卓)C2DM学习——客户端代码开发
- Android(安卓)版本更新下载自动安装APK,并解决Android6.0安装失败
- Android用Broadcast实现EventBus的功能和用法
- android编程之广播机制详解
- Android(安卓)Service 通知Activity更新界面的方法研究|Service