微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否可以对深度链接 android 中的每个 pathPrefix 执行不同的操作?

如何解决是否可以对深度链接 android 中的每个 pathPrefix 执行不同的操作?

我正在研究 React Native 项目,但在深度链接 Android 时遇到问题。我有两个不同的 pathPrefix。比如说:

<data android:pathPrefix="/query" />

<data android:pathPrefix="/transaction" />

我想要的是:

  1. 如果我点击 https://my.domain/query,本机模式会出现并让我选择在应用程序或浏览器中打开它
  2. 但如果我点击 https://my.domain/transaction,它会自动将我定向到我的应用程序,而不会显示任何模式

我已阅读此 https://developer.android.com/training/app-links/verify-site-associations解决第二个问题,而且我已经这样做了。但没有像我想要的那样工作。

我已经试过了:

  1. 做两个不同的活动。 MainActivitySecondActivity。在 Main 中,我使用前缀 query,而在 SecondActivity 中,我使用前缀 transaction,在此活动中,我的意图过滤器具有 android:autoVerify="true" 以使应用程序链接正常工作。
  2. 我做了一个活动,但我有 2 个 inten-filter一个带有 android:autoVerify="true",另一个没有它。

两者都有相同的结果。它会自动将我定向到我的应用。

我的问题是,有可能有不同的动作吗?如果是这样,如何实现它?

谢谢

解决方法

你有没有尝试过这样的事情?

<activity ...>

  <intent-filter android:autoVerify="false">
    <action android:name="android.intent.action.VIEW" />

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

    <data
      android:scheme="https"
      android:host="my.domain"
      android:pathPrefix="query" />
  </intent-filter>

  <intent-filter android:autoVerify="true">
    <action android:name="android.intent.action.VIEW" />

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

    <data
      android:scheme="https"
      android:host="my.domain"
      android:pathPrefix="transaction" />

  </intent-filter>

</activity>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。