美文网首页
android---广播的简单介绍

android---广播的简单介绍

作者: 毹毹 | 来源:发表于2017-03-07 14:49 被阅读34次

对于android的广播机制一直不是特别清楚,今日就来聊聊他到底有啥!

1、分类

android广播接收器(BroadcastReceiver)可以分为2大类

标准广播:是完全异步执行的广播,小二理解为发散的那种,效率高,不可以拦截,没有顺序,各个广播接收器可以同时接收到。

有序广播:是一种同步执行的广播,是有先后顺寻的,直线似的,可以拦截。优先级高的就可以优先收到消息。

2、注册

android四大组件都需要注册,只有广播有两种注册方式(动态代码注册,静态在AndroidManifest.xml中注册),其他三个在AndroidManifest.xml静态注册。

3、创建广播接收器

如何创建广播接收器?

需要新建一个类,让他继承BroadcastReceiver,并且需要重写onReceive()方法。有广播到来时,onReceive()方法就会执行,具体的逻辑可以再该方法中处理。

3、例子--实现一个检测网络变化发出的广播(动态注册实例)

广播接收类

classNetworkChangeReceicerextendsBroadcastReceiver {

@Override

public voidonReceive(Context context,Intent intent) {

ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

NetworkInfo info = manager.getActiveNetworkInfo();

if(info !=null&& info.isAvailable()) {

Toast.makeText(context,"网络可用,请继续!",Toast.LENGTH_LONG).show();

}else{

Toast.makeText(context,"网络不可用,请检查网络!",Toast.LENGTH_LONG).show();

}

}

}

接下来需要在活动onCreate()方法中,创建一个IntentFilter的实例,给他添加一个action("android.net.conn.CONNECTIVITY_CHANGE")的值,

创建广播接收器的类的实例,然后调用

registerReceiver(receicer,filter)进行注册。

这样就可以了,记得需要在onDestriy()方法中调用unregisterReceiver(receicer);来取消注册的广播。

因为动态注册的广播接收器一定都要取消才可以。

相关文章

  • android---广播的简单介绍

    对于android的广播机制一直不是特别清楚,今日就来聊聊他到底有啥! 1、分类 android广播接收器(Bro...

  • Android---简单的加载动画

    实现效果:一个会转动的猫咪加载动画 首先创建一个类管理我们自定义的控件 然后实现其构造方法 定义两个Image...

  • spring websocket 和socketjs实现单聊群聊

    spring websocket 和socketjs实现单聊群聊,广播的消息推送详解 WebSocket简单介绍 ...

  • RabbitMQ -- part4 [Routing]

    上节介绍了通过广播简单的将日志推送到所有的consumer。本节介绍通过定义规则,让consumer有选择的接受日...

  • 安卓四大组件之Broadcast

    广播介绍 广播注册 本地广播 广播介绍在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息...

  • broadcast 学习

    本篇介绍 android的广播在应用开发中使用的场景很多,本篇就介绍下广播的基本内容,然后侧重介绍广播的几个关键流...

  • BroadcastReceiver

    前言 本篇主要介绍 广播的类型、注册和发送广播、自定义广播、本地广播等 正文 一、广播的类型 标准广播,是一种完全...

  • Android-Broadcast Receiver(广播接收器

    简单记录Broadcast Receiver(广播接收器)的简单实用 1. 广播分类 1.1 Normal bro...

  • 广播相关学习-sendBroadcast

    前言 前面已经介绍过动态注册广播接收者的逻辑,静态注册广播接收者的注册写在manifest中,就不介绍了,下面介绍...

  • Python Data Science, NumPy 2

    这篇文章延续Python Data Science, NumPy 1,介绍广播、高级索引以及数组排序。 广播 广播...

网友评论

      本文标题:android---广播的简单介绍

      本文链接:https://www.haomeiwen.com/subject/xitmgttx.html