LocalBroadcastManager是Android Support包提供了一個工具,是用來在同一個應用內的不同組件間發送Broadcast的。
使用LocalBroadcastManager有如下好處:
- 發送的廣播只會在自己App內傳播,不會泄露給其他App,確保隱私數據不會泄露
- 其他App也無法向你的App發送該廣播,不用擔心其他App會來搞破壞
- 比系統全局廣播更加高效
和系統廣播使用方式類似:
先通過LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(this);
獲取實例
然後通過函數 registerReceiver來註冊監聽器
- lbm.registerReceiver(new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- // TODO Handle the received local broadcast
- }
- }, new IntentFilter(LOCAL_ACTION));
- Read more: http://blog.chengyunfeng.com/?p=498#ixzz2l9b1fFR2
通過 sendBroadcast 函數來發送廣播