我有一个带有底部导航的单一活动应用,并向其中添加了深层链接。深度链接是指向导航图内部的片段。我通过此Deeplink传递了一些数据,然后对其进行了进一步处理。
当我从whatsapp打开深度链接并且该应用程序关闭时,该链接可以正常工作。它重定向到正确的片段。
我已将导航图添加到MainActivity
<nav-graph android:value="@navigation/fragment"/>
但是当应用程序打开并且我点击whatsapp中的链接时,该应用程序进入了前台,但深层链接不起作用。甚至不会加载正确的片段。
我尝试将android:launchMode =“ singleTask”更改为“ singleTop”,但随后该应用在whatsapp中打开。
对此有何建议?
答案 0 :(得分:1)
我找到了解决方案。我的活动launchMode仍然是singleTask。
因此在我的MainActivity中,我重写了以下内容:
@Override
protected void onNewIntent(Intent intent) {
setIntent( intent );
super.onNewIntent( intent );
}
然后我可以在getIntent()
中呼叫onResume()
,然后执行剩余的任务。
onNewIntent
只是在后台进入应用程序的入口。因此,所有处理和UI更改都必须通过onResume
处理。
如果我错了或者您有更好的方法,请随时纠正我。