gpt4 book ai didi

带有导航组件的 Android 深层链接无法按预期工作

转载 作者:行者123 更新时间:2023-12-03 13:26:11 25 4
gpt4 key购买 nike

我希望你们一切都好。

我有一个小问题;

我正在使用导航组件,单个 Activity 多个 fragment 。我对深度链接有一个小问题。

  • 我设置了<nav-graph/>在 list 中并设置 launcherMode="singleTask",
  • 我设置了<deeplink/>在导航图中。
  • 我已经在 Fragment 中处理了 Intent Extras。

  • 我的流程是;
  • 用户点击忘记密码,填写编辑文本然后请求深度链接邮件。工作正常
  • 用户点击电子邮件中的深层链接并选择应用程序,然后自动导航到 CreatePasswordFragment(深层链接目标 fragment )&(我可以在这里处理 args,也可以正常工作)

  • 问题是;有时,如果应用程序在后台打开(例如我请求邮件然后按下主页按钮)并且当我单击深度链接时,最后一个 fragment 运行而不是目标 fragment CreatePasswordFragment
    关于什么可能导致问题的任何想法?

    谢谢!

    导航版本:2.2.0

    电子邮件附带的深层链接
     http://myurl/forgot-password/?key=sodmoq9wwdW1djkssdqMEdqlsp

    导航图
     <deepLink android:id="@+id/deepLink"
    app:uri="http://myurl/forgot-password/?key={key}"/>
    <argument
    android:name="key"
    app:argType="string" />

    Android list
     <activity 
    ...
    android:launchMode="singleTask">
    <nav-graph android:value="@navigation/navigation_main" />
    </activity>`

    反编译 list
     <intent-filter>

    <action android:name="android.intent.action.VIEW" />

    <category android:name="android.intent.category.DEFAULT" />

    <category android:name="android.intent.category.BROWSABLE"/>

    <data android:scheme="http" />

    <data android:host="myurl" />

    <data android:path="/forgot-password/" />
    </intent-filter>

    最佳答案

    晚会有点晚了,但为了将来引用 Ian Lake(导航组件的技术负责人)的答案:

    NavController doesn't override methods in your activity, so you'd need to call this manually if you insist on using android:launchMode="singleTask".


    这是源代码的链接:
    https://stackoverflow.com/a/61569940/4408458

    关于带有导航组件的 Android 深层链接无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60223341/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com