首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏小陈飞砖

    BroadcastReceiver

    系统组件的一个核心服务,负责四大组件的启动,切换和调度,以及应用程序的管理和调度工作; 四、LocalBroadcastManager详解 1、三个集合类 1、 private final HashMap<BroadcastReceiver , ArrayList<IntentFilter>> mReceivers = new HashMap<BroadcastReceiver, ArrayList<IntentFilter >>(); key是BroadcastReceiver,value是每个BroadcastReceiver对应可以接收几个action的广播; 2、 private private static class ReceiverRecord { final IntentFilter filter; final BroadcastReceiver

    41610编辑于 2022-06-25
  • 来自专栏用户画像

    android broadcastReceiver组件

    </application> </manifest> Demo.java package com.example.receivedemo; import android.content.BroadcastReceiver android.content.Context; import android.content.Intent; import android.widget.Toast; public class Demo extends BroadcastReceiver

    46820发布于 2018-08-27
  • 来自专栏全栈程序员必看

    赵雅智_BroadcastReceiver

    BroadcastReceiver 用于接收程序(包含用户开放的程序和系统内建程序)所发出的Broadcast intent 耗电量 开机启动 窃取别人短信 窃取别人电话 开发: 创建须要启动的 BroadcastReceiver(包含启动的Intent系统已经创建的) 继承BroadcastReceiver类而且重写onReceive()方法 注冊广播接收者 静态注冊(配置文件)或者动态注冊 BroadcastReceiver都有可能被启动 BroadcastReceiver本质上仅仅是一个系统级的监听器—>他专门负责监听各种程序所发出的的Broadcast 注冊广播接受者 静态注冊 我们新建三个BroadcastReceiver。 这里不能使用子线程来解决 , 由于 BroadcastReceiver 的生命周期非常短 , 子线程可能还没有结束,BroadcastReceiver 就先结束了 .BroadcastReceiver

    1.1K10编辑于 2022-07-08
  • 来自专栏我的博客

    BroadcastReceiver基础知识

    1、可接受多个广播,无论是系统还程序发送的广播都可以接收 2、实质上是系统级别的监听器 3、 发送广播就会触发与之匹配的接收广播,如果接收广播在10s内不能执行完毕就会提示程序无法响应!(终于知道安卓程序为何总是提示程序无法相应的一个原因了)可以使用Service在后台进行一些比较复杂的耗时操作 4、 接受广播重写onReceive()方法即可接收 5、 使用BroadcastReceive需要进行注册 6、 小例子 发送关键代码: Intent i = new Intent(MainActivity.th

    72570发布于 2018-05-08
  • 来自专栏全栈程序员必看

    BroadcastReceiver详解以及应用

    这就讲到了Android四大组件之一:BroadcastReceiver,翻译是广播接收者。意思就是接收广播用的。他可以接收到系统开机完成的广播,以及系统电量不足的广播,以及系统收到短信的广播,等等。 而在Android中的广播机制与现实中一样,发送广播的是Broadcast,接收广播的BroadcastReceiver及广播之间传递数据的Intent。 注册BroadcastReceiver接收广播 继承BroadcastReceiver 这是一个抽象类,public abstract class BroadcastReceiver { 实现抽象方法 public class MyBroadcastReceiver extends BroadcastReceiver { @Override public void onReceive BroadcastReceiver有两种注册方式: 静态注册(在AndroidManifest.xml清单文件中注册) 动态注册(在代码中注册) 广播接收者静态注册方式 当我们需要一直接收某种广播时

    1.3K31编辑于 2022-08-02
  • 来自专栏python3

    BroadcastReceiver的思考

    上一篇文章中,傻蛋提到了BroadcastReceiver是Android中最轻薄、最短小的组件,它的对象生命周期十分短暂,经过傻蛋测试在BroadcastReceiver中让线程睡眠10秒(Activity 是5秒钟)的话,Android就会弹出错误(和Activity超时的错误相同),同时需要注意的是Activity、Service和BroadcastReceiver都是运行在本进程的主线程里面的。 所以总结一下:无论是 Activity、BroadcastReceiver还是Service,只要是有长时间处理的任务,就需要重新开一个线程来处理,为什么会这样?因为他们都是运行在主线程中的。 在使用BroadcastReceiver时还有一个我们需要注意的:在BroadcastReceiver的onReceive(Context context , Intent intent )这第一个context 通过傻蛋测试发现: 如果你的BroadcastReceiver是通过在Activity中的this.registerReceiver(myBroadcaster, filter); 来注册的话,那么这个

    59010发布于 2020-01-07
  • 来自专栏Android 进阶

    BroadcastReceiver 源码分析

    Activity启动过程可以分为两种:一种是根activity的启动过程,另一种是普通activity启动过程。

    62610发布于 2019-12-26
  • 来自专栏everhad

    笔记:BroadcastReceiver的运行过程

    BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context @Override public Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter, String >> mReceivers = new HashMap<Context, HashMap<BroadcastReceiver, LoadedApk.ReceiverDispatcher> >(); 它以Receiver关联的Context对象(也就是执行注册的context对象)作为key,存储了对应context注册的所有的BroadcastReceiver对象。 BroadcastReceiver receiver = mReceiver; ...

    1.2K70发布于 2018-01-08
  • 来自专栏米扑专栏

    Android Service 服务(二)—— BroadcastReceiver

    一、 BroadcastReceiver简介 BroadcastReceiver,用于异步接收广播Intent,广播Intent是通过调用Context.sendBroadcast()发送、BroadcastReceiver BroadcastReceiver 接收广播方式: 1. 三、 BroadcastReceiver生命周期 一个BroadcastReceiver 对象只有在被调用onReceive(Context, Intent)的才有效,当从该函数返回后,该对象就无效的了 因为当得到其他异步操作所返回的结果时,BroadcastReceiver 可能已经无效了。 = null){ stopService(intent); } } } BroadcastReceiver public class MusicReceiver extends BroadcastReceiver

    2K20发布于 2019-02-19
  • 来自专栏刘晓杰

    BroadcastReceiver启动过程

    1.注册过程 @Override public Intent registerReceiver( BroadcastReceiver receiver, IntentFilter \sources\Android-23\android\app)的registerReceiver中 @Override public Intent registerReceiver(BroadcastReceiver registerReceiver(receiver, filter, null, null); } @Override public Intent registerReceiver(BroadcastReceiver broadcastPermission, scheduler, getOuterContext()); } private Intent registerReceiverInternal(BroadcastReceiver

    90750发布于 2019-02-21
  • 来自专栏james大数据架构

    Android中BroadcastReceiver广播

    BroadCastReceiver 简介 广播接收者( BroadcastReceiver )用于接收广播 Intent ,广播 Intent 的发送是通过调用 Context.sendBroadcast 而 BroadcastReceiver 是对发送出来的广播进行过滤接收并响应的一类组件;  来自普通应用程序,如一个应用程序通知其他应用程序某些数据已经下载完毕。   BroadcastReceiver 自身并不实现图形用户界面,但是当它收到某个通知后, BroadcastReceiver 可以启动 Activity 作为响应,或者通过 NotificationMananger 因为当得到其他异步操作所返回的结果时,BroadcastReceiver 可能已经无效了。 使用BroadcastReceiver 编写类继承BroadcastReceiver,复写onReceiver()方法 package com.example.receive; import android.content.BroadcastReceiver

    1.3K50发布于 2018-01-22
  • 来自专栏安卓圈

    BroadcastReceiver插件化解决方案

    ActivityInfo receiverInfo = (ActivityInfo) RefInvoke.getFieldObject(receiver, "info"); BroadcastReceiver broadcastReceiver = (BroadcastReceiver) RefInvoke.createObject(receiverInfo.name); context.registerReceiver (broadcastReceiver, intentFilter); } } catch (Exception e) { e.printStackTrace broadcastReceiver = (BroadcastReceiver) RefInvoke.createObject(receiverInfo.name); Exception e) { e.printStackTrace(); } } } public class StubReceiver extends BroadcastReceiver

    97420发布于 2019-09-26
  • 来自专栏达达前端

    使用广播-BroadcastReceiver最详细解析

    标题图 女孩:BroadcastReceiver是什么呀? 男孩:Broadcast是广播的意思,在Android中应用程序之间的传输信息的机制,BroadcastReceiver是接收广播通知的组件,广播和广播接收器是Android中需要了解的,那么怎么样去了解呢 BroadcastReceiver的实现: 到头来还是要了解BroadcastReceiver的实现,接下来我列出主要的内容目录,对于广播接收器是我们要掌握的,是Android中重要的四大组件之一。 BroadcastReceiver.png 接收系统广播 你或许会问一下什么又是系统广播,对于掌握手机概念的,应用懂得系统,如:电池电量低,发送系统广播消息;安装新应用,广播安装信息等。 男孩:嗯,可以,掌握就牛逼了~ 代码示例: // 继承BroadcastReceivre基类 public class MyBroadcastReceiver extends BroadcastReceiver

    97820发布于 2019-07-03
  • 来自专栏Java架构师必看

    android开发(十九) BroadcastReceiver应用详解

    本文源自:http://blog.csdn.net/liuhe688/article/details/6955668 一 BroadcastReceiver介绍: BroadcastReceiver 下面我们就对BroadcastReceiver逐一地分析和演练,了解和掌握它的各种功能和用法。 首先,我们来演示一下创建一个BroadcastReceiver,并让这个BroadcastReceiver能够根据我们的需要来运行。 要创建自己的BroadcastReceiver对象,我们需要继承android.content.BroadcastReceiver,并实现其onReceive方法。 二 下面我们就来介绍一下如何为BroadcastReceiver注册广播地址。

    1.2K20发布于 2021-05-27
  • 来自专栏拭心的安卓进阶之路

    BroadcastReceiver获取手机网络状态

    public class NetReceiver extends BroadcastReceiver { /** * 枚举网络状态 NET_NO:没有网络 NET_2G:2g网络 NET_3G:

    90120编辑于 2022-05-06
  • 来自专栏Android知识分享

    Android:BroadcastReceiver广播注册方式汇总

    Android:BroadcastReceiver注册的方式分为两种: 静态注册 动态注册 1. 静态注册 在AndroidManifest.xml里通过标签声明 属性说明: <receiver android:enabled=["true" | "false"] //此broadcastReceiver 子类的类名 android:name=".mBroadcastReceiver" //具有相应权限的广播发送者发送的广播才能被此BroadcastReceiver所接收; android :permission="string" //BroadcastReceiver运行所处的进程 //默认为app的进程,可以指定独立的进程 //注:Android四大基本组件都可以通过此属性指定自己的独立进程 动态注册 在代码中通过调用Context的registerReceiver()方法进行动态注册BroadcastReceiver,具体代码如下: @Override protected void onResume

    3.2K40发布于 2019-02-22
  • 浅谈android Service和BroadCastReceiver

    3.BroadcastReceiver开发详解 3.1BroadcastReceiver广播接收者 要实现一个广播接收者方法如下:  第一步:继承BroadcastReceiver,并重写onReceive 3.2广播接收者的响应 在Android中,每次广播消息到来时都会创建BroadcastReceiver实例并执行onReceive() 方法, onReceive() 方法执行完后,BroadcastReceiver 所以在BroadcastReceiver里不能做一些比较耗时的操作,否侧会弹出ANR(Application No Response)的对话框。 这里不能使用子线程来解决,因为BroadcastReceiver的生命周期很短,子线程可能还没有结束BroadcastReceiver就先结束了。 BroadcastReceiver一旦结束,此时BroadcastReceiver的所在进程很容易在系统需要内存时被优先杀死,因为它属于空进程(没有任何活动组件的进程)。

    2.4K70发布于 2018-05-09
  • 来自专栏码上积木

    BroadcastReceiver三问—美团真题

    BroadcastReceiver 和 EventBus 有啥不同? 广播的两种注册方式和生命周期。 子类的类名 android:name=".mBroadcastReceiver" //具有相应权限的广播发送者发送的广播才能被此 BroadcastReceiver 所接收 android: 2)生命周期: BroadcastReceiver的生命周期很简单,发送事件后,收广播方调用onReceive方法,执行完毕后,对象被销毁,这就是一整个流程。 先说说BroadcastReceiver的内部原理:大家都知道BroadcastReceiver是一个系统级的广播,意思是手机里所有的app都能监听和发送,所以BroadcastReceiver肯定是一个跨进程的通信 BroadcastReceiver 和 EventBus 有啥不同? 我觉得对于应用内的事件传播,EventBus基本可以替代广播了。

    1.2K20发布于 2020-09-27
  • 来自专栏AndroidStudio初识

    Android 四大组件之BroadcastReceiver

    下面,就详细介绍下 BroadcastReceiver 的相关知识。 1. 定义 BroadcastReceiver(广播接收器)即广播,是一个全局的监听器。 ,将广播发送到BroadcastReceiver(一般情况下是Activity)相应的消息循环队列中; 消息循环执行拿到此广播,回调 BroadcastReceiver 中的 onReceive() 方法 使用步骤 5.1 自定义广播接收者BroadcastReceiver //继承BroadcastReceiver public class MyBroadcaseReceiver extends BroadcastReceiver 这种形式的 BroadcastReceiver 的生命周期伴随着整个应用。如果这种方式处理的是系统广播,那么不管应用是否在运行,该广播接收器都能接收到该广播。 ,具有相应权限的广播发送方发送的广播才能被此 BroadcastReceiver 所接收;android:process —— BroadcastReceiver 运行所处的进程。

    2.2K10发布于 2019-09-02
  • 来自专栏Android知识点总结

    2-AII--BroadcastReceiver有序广播

    有序广播.gif 二、广播接收者代码实现 1.男孩广播接收者:BR1_Boy.java public class BR1_Boy extends BroadcastReceiver { @Override setResultData("我有一个漂亮的石头,只卖10W元"); } } 3.雕刻家广播接收者:BR3_Graver.java public class BR3_Graver extends BroadcastReceiver setResultData("我有一个漂亮的石头,只卖1000W元"); } } 4.宝石家广播接收者:BR4_RubyMan.java public class BR4_RubyMan extends BroadcastReceiver .收藏家广播接收者:BR5_Collector.java /** * 最终的receiver 不需要再清单文件里面配置 */ public class BR5_Collector extends BroadcastReceiver 有序广播.png 2.如果石匠截断,不喊了,直接卖给收藏家 public class BR2_Stonemason extends BroadcastReceiver { @Override

    54940发布于 2018-09-26
领券