大家好,本篇文章將會像大家介紹安卓技能-廣播的使用。
首先,廣播是什麼呢?在我的認識中,廣播就相當於一個鬧鈴,或者相當於手機中的一個提醒事項功能。如目前處於Activity A中,當A界面處理結束後,你需要在Activity B中處理一些界面顯示的操作時,會使用到廣播的功能。以下我會以一個項目中的實例來介紹廣播技術。
需求:在主界面M點擊登錄按鈕進入登錄A界面,在登錄界面完成登錄操作後,隨後關閉A界面,對M界面進行數據的相關刷新顯示。
分析:在這裏我們處理完A界面後,需要對主界面M界面進行UI的相關修改,所以決定採用廣播技術。
主要步驟:
步驟一:在主界面A註冊廣播
IntentFilter intentFilter1 = new IntentFilter();
intentFilter1.addAction(NewMainActivity.BROADCAST_ACTION_NAME_GIFT_GONE);
mActivity.registerReceiver(mGiftNumsGoneReceiver, intentFilter1);
這裏的mGiftNumsGoneReceiver是廣播的接收處理器。用廣播機制接收到此廣播的請求之後的操作是在這個接收器中完成的。
步驟二:實現廣播接收器的相關方法
private BroadcastReceiver mGiftNumsGoneReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(NewMainActivity.BROADCAST_ACTION_NAME_GIFT_GONE)) {
/**
*在這裏進行相關的界面處理
*/
}
}
};
步驟三 在登錄完成後對此廣播進行調用
Intent intent1 = new Intent(NewMainActivity.BROADCAST_ACTION_NAME_GIFT_GONE);
mActivity.sendBroadcast(intent1);(這裏的登錄界面採用Fragment進行開發,所以使用mActivity進行調用sendBroadcast方法,若如果使用Activity開發的發,可直接使用sendBroadcast方法來進行廣播機制的觸發)。
在執行完這兩行代碼,廣播機制也就被觸發了。也正如我們步驟二所說的,會調用步驟二中在主界面M中寫好的接收器mGiftNumsGoneReceiver。
步驟四 註銷廣播
爲了app能狗平穩的運行,我們一定要注意各種機制的生命週期,在這,也要注意廣播的生命週期。
在onDestroy()方法中對廣播進行註銷
mActivity.unregisterReceiver(mGiftNumsGoneReceiver);
使用unregisterReceiver(接收器對象)進行廣播的註銷。
做到這裏,你也算是接觸到了廣播技術的門檻。本人也是安卓新生,對於術語的述說也存在欠缺,如有什麼疑問或建議可以在下方給我留言哦~~~