阻止Android重新创建已存在的活动

时间:2017-07-20 07:36:21

标签: android android-activity deep-linking recreate deeplink

我的问题是与我的应用程序的深层链接。更具体地说,这也只有在尝试从聊天头活动的Facebook Messenger打开我的应用程序的深层链接时才会发生。

有时,当尝试使用来自FBMessenger的深层链接返回(未打开,只是在信使覆盖app后返回)到我的应用程序(只有一个活动)时,活动会重新创建。调用onCreate方法并创建我的活动的新实例。主要问题是,在旧活动被销毁之后不会发生这种情况,我已经添加了日志,并且第一个新活动的onCreate被调用,并且仅在旧活动之后onDestroy { {1}}被调用。

那么为什么Android尝试创建我的活动的新实例,如果它还没有销毁旧实例呢?

活动' launchMode设置为singleTask

修改:尝试将launchMode设置为singleInstancesingleTop

编辑2:通过向活动添加android:documentLaunchMode="intoExisting"找到可能的解决方法。如果一切正常,将在明天早上再进行一些测试并将此修复作为解决方案发布。

1 个答案:

答案 0 :(得分:1)

在Android清单中使用此功能

 android:documentLaunchMode="intoExisting"