我看到一个奇怪的行为只发生在 android 12 设备上。
- 在
Fragment
应用程序中,我们点击以在浏览器中打开一个链接,如下所示:Intent(Intent.ACTION_VIEW, Uri.parse(link))
然后startActivity(intent)
- 该链接指向我们自己的网站,该网站已验证主机。
- 然后发生的
MainActivity
是被销毁并重新启动,然后浏览器打开。 - 该应用程序基于单个活动,
Fragments
并且具有launchMode=singleTask
- 运行 android 12 以外的设备只需打开浏览器,当返回应用程序时,应用程序处于上次
Fragment
访问状态 - 这是所需的行为,也是我所期望的。
请注意,该应用程序正确处理深层链接。它还启用了 autoVerify 并且assetLinks.json 的设置是正确的 - 单击链接时应用程序会自动打开。
我的想法是,围绕深层链接引入的变化autoVerify
一定是造成这种情况的原因。如果我们交换链接,https://www.google.com
它不会破坏MainActivity
,我们可以访问该网站并返回应用程序。与我们的一位主机的任何其他链接都会导致该行为。
好奇有没有人有同样的经历。我们正在考虑在内部打开一个 webview 以避免将其作为临时解决方案,但这样做并不理想。