如果从另一个APP打开,则会创建两次相同活动

时间:2017-08-30 10:59:46

标签: android

如果您在活动B中打开APP并使用APP(2)打开同一个活动,它将创建活动B的另一个实例,现在您将有2个活动B.

有没有办法让它打开已经打开的Activity,而不是创建一个新的?

5 个答案:

答案 0 :(得分:1)

在您的andorid清单中使用以确保只创建一个活动实例

答案 1 :(得分:1)

使用android:launchMode="singleInstance"进行AndroidManifest中的活动 并在活动中覆盖onNewIntent以在新的startActivity()调用

时获取数据

答案 2 :(得分:1)

是你的清单使用launchMode:活动标签中的singleTask

<activity

        android:name=".MainActivity"
        android:launchMode="singleTask">
         -------------- Your Activity---------
 <activity/>

答案 3 :(得分:0)

guide之后,您应该在开始意图中添加以下标志:

FLAG_ACTIVITY_NEW_TASK

答案 4 :(得分:0)

startActivity

之前使用以下标志
Intent intent = new Intent(this, MyActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

在清单文件中为活动代码添加android:launchMode="singleTask"