【发布时间】:2019-06-20 11:49:25
【问题描述】:
我有一个AlertActivity 和一个Activity。收到广播后,两个活动都需要完成。但是如果AlertActivity 在Activity 之上,则下面的代码会导致黑屏。
下面是Activity中的代码:
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals("BROADCAST_INTENT")){
if(alertActvity != null)
alertActivity.finish();
finish();
}
}
和AlertActivity中的代码:
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals("BROADCAST_INTENT"))
finish();
}
}
首先,Activity的onStop()在AlertActivity的onStop()被调用之前被调用,这导致黑屏,甚至AlertActivity的finish()在Activity的finish()之前被调用。
请在这方面帮助我。
【问题讨论】:
标签: java android performance