android 多个activity 共用一套广播BroadcastReceiver
16lz
2021-01-23
public abstract class ParentActivity extends Activity {
public static final String ACTION_1 = "com.example.action1";
public static final String ACTION_2 = "com.example.action2";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ACTION_1);
intentFilter.addAction(ACTION_2);
registerReceiver(receiver, intentFilter);
}
protected abstract void doAction1();
protected abstract void doAction2(String arg);
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(ACTION_1)) {
doAction1();
} else if (action.equals(ACTION_2)) {
String arg = intent.getStringExtra("arg");
doAction2(arg);
}
}
};
@Override
protected void onDestroy() {
unregisterReceiver(receiver);
super.onDestroy();
};
}
public static final String ACTION_1 = "com.example.action1";
public static final String ACTION_2 = "com.example.action2";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ACTION_1);
intentFilter.addAction(ACTION_2);
registerReceiver(receiver, intentFilter);
}
protected abstract void doAction1();
protected abstract void doAction2(String arg);
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(ACTION_1)) {
doAction1();
} else if (action.equals(ACTION_2)) {
String arg = intent.getStringExtra("arg");
doAction2(arg);
}
}
};
@Override
protected void onDestroy() {
unregisterReceiver(receiver);
super.onDestroy();
};
}
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer