【发布时间】:2021-06-24 14:43:22
【问题描述】:
当 Flutter 应用在后台运行时。我单击电子邮件中存在的链接,应用程序正在打开但无法推送到下一个屏幕。 应用程序何时不在后台运行。我单击电子邮件中的链接,应用程序正在打开以推送到下一个屏幕。
我正在使用以下包颤振应用程序开发
【问题讨论】:
标签: flutter deep-linking
当 Flutter 应用在后台运行时。我单击电子邮件中存在的链接,应用程序正在打开但无法推送到下一个屏幕。 应用程序何时不在后台运行。我单击电子邮件中的链接,应用程序正在打开以推送到下一个屏幕。
我正在使用以下包颤振应用程序开发
【问题讨论】:
标签: flutter deep-linking
如果应用程序被终止(或者说没有在后台运行)并且操作系统必须重新启动它 - 这就是冷启动。在这种情况下,getInitialLink 将拥有启动您的应用程序的链接,并且 Stream 不会生成链接(在那个时间点)。
或者 - 如果应用程序在后台运行并且操作系统必须将其带到前台,则 Stream 将是生成链接的对象,而 getInitialLink 将是 null 或初始链接,其中应用程序已启动。
由于这两种情况 - 您应该始终添加对初始链接(或 URI)的检查,并订阅链接流(或 URI)。
【讨论】:
getInitialLink() 以及getLinksStream