private void registerReceiver(){
if (null == mReceiver) {
mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (Const.LOGOUT_ACTION.equals(intent.getAction())){
updateDate();
}
}
};
}
try {
LocalBroadcastManager.getInstance(mContext).registerReceiver(mReceiver,
new IntentFilter(Const.LOGOUT_ACTION));
} catch (Exception e) {
e.printStackTrace();
}
}
private void unregisterReceiver(){
if (null != mReceiver) {
try {
LocalBroadcastManager.getInstance(mContext).unregisterReceiver(mReceiver);
} catch (Exception e) {
e.printStackTrace();
}
mReceiver = null;
}
}
ps:
局部广播:LocalBroadcastManager要到context
静态:只能在BC中处理
动态:
registerReceiver属于ContextWrapper
Object (java.lang)
Context (android.content)
ContextWrapper (android.content)
Application (android.app)
Service (android.app)
ContextThemeWrapper (android.view)
Activity (android.app)
UMApplication.getInstance().sendBroadcast(new Intent(Const.ACTION_RADAR_OPEN));
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Const.ACTION_RADAR_OPEN);
UMApplication.getInstance().registerReceiver(mReceiver, intentFilter);
//public class MyReceiver extends BroadcastReceiver
//private MyReceiver receiver;
//registerReceiver(receiver, wifiIntentFilter);
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
}
}