【问题标题】:Android Intent survives through app relaunch / Airbnb deep link survives through app relaunchAndroid Intent 通过应用重新启动而存活 / Airbnb 深度链接通过应用重新启动而存活
【发布时间】:2018-06-04 06:09:32
【问题描述】:

我们在应用中使用了这个 Airbnb 深层链接调度库。
https://github.com/airbnb/DeepLinkDispatch

以下是应用面临的问题。

  1. 杀死应用程序。
  2. 使用深层链接启动应用程序。比如说,在活动之上打开了一个对话框。
  3. 在应用程序上按返回键并关闭它。
  4. 通过最近的任务再次启动它。
    对话框再次出现。重复步骤,它会再次出现。
    这主要是因为在返回键上,进程没有死,并且活动覆盖了 onSaveInstanceState() 和 onRestoreInstanceState()。我在 onCreate() 中看到 getIntent() 返回具有相同先前深度链接的意图。这就是问题所在。
    如果我从主屏幕启动应用程序,则不会发生这种情况,在这种情况下,它会发布启动主页意图,因此以前的意图可能已被它替换,因此消失了。

我知道它在 Android 中是这样工作的。但是这个库或Android中有没有办法解决它?

【问题讨论】:

    标签: android android-intent deep-linking


    【解决方案1】:

    这不是 Airbnb 库的问题,但这就是它在 Android 上的工作方式。在使用 后退键 杀死应用程序后从最近启动时,Android 会发布用于启动应用程序的先前意图。
    Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS 指示应用程序是否从历史记录/最近屏幕启动。该标志可用于处理任何逻辑。

    感谢Android: Activity is using old intent if launching app from Recent Task

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-18
      • 2018-08-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多