好文推荐:LocalBroadcastManager 的实现原理

  • A+
所属分类:WooYun-Zone

在我文章 http://drops.wooyun.org/tips/4393  中提到

LocalBroadcastManager.sendBroadcast() 发出的广播只能被app自身广播接收器接收。

Intent intent = new Intent("my-sensitive-event");

intent.putExtra("event", "this is a test event");

LocalBroadcastManager.getInstance(this).sendBroadcast(intent);

在某些场景下能提供广播的安全性,但是具体原理并没有进行分析.下面这篇文章就对此进行了分析 (适合有 android 开发基础的同学)

文章地址:http://www.trinea.cn/android/localbroadcastmanager-impl/

(1) LocalBroadcastManager 的核心实现实际还是 Handler,只是利用到了 IntentFilter 的 match 功能,至于 BroadcastReceiver 换成其他接口也无所谓,顺便利用了现成的类和概念而已。

(2) 因为是 Handler 实现的应用内的通信,自然安全性更好,效率更高。

  1. 1#

    纷纭 (:-)) | 2015-06-12 11:03

    逼格高~
    玩不了~~

  2. 2#

    瘦蛟舞 | 2015-06-12 11:05

    @纷纭 加油~骚年不要轻言弃