我想从BroadcastReceiver
创建一个活动的多个实例,该活动包含一个AlertDialog
,目前我为此目的使用以下代码:
Intent intent = new Intent(this, MultipleInstanceActivity.calss);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
和清单文件android:launchMode="standard"
中,我认为这是FLAG_ACTIVITY_NEW_TASK
导致android:launchMode="standard"
更改为android:launchMode="singleInstance"
之类的。我无法创建此活动的多个实例。我还尝试使用FLAG_ACTIVITY_MULTIPLE_TASK
,但没有用。
我创建了一个PreferenceActivity
,真正困扰我的是,当此PreferenceActivity
打开时,我的应用程序会创建多个对话框,即在其上使用不同的数据进行多个实例。但是,当它不打开时,我的应用不会创建多个实例以说明,它不会打开另一个对话框。logcat没有发出任何警告或错误。
我的问题:
如何从
BroadcastReceiver
创建活动的多个实例?有人可以向我解释第二种情况下发生了什么,
PreferenceActivity
一个,为什么会创建多个实例?
我遇到了与您在这里遇到的相同问题,我通过使用flag_activity_new_task和flag_activity_multiple_task解决了它。
Intent intent = new Intent(context, YourActivityClass.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK).addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
context.startActivity(intent);
希望这也对您有用。