当前位置: 首页 > 知识库问答 >
问题:

Android深度链接:为应用程序和Play商店使用相同的链接

颛孙航
2023-03-14

我有一个网站可以让用户进行搜索查询。查询可能需要一些时间来完成(几分钟到几天),我想让用户下载一个Android应用程序,并通过向用户发送一封带有链接的电子邮件来收到答案。

我希望无论用户是否安装了应用程序,这种机制都能起作用;换句话说:

  • 如果用户拥有该应用程序,则应该使用包含标识符参数的深层链接打开该应用程序。
  • 如果用户没有它,它应该在应用程序的页面上打开播放商店(例如https://play.google.com/store/apps/details?id=com.bar.foo

有没有一种方法可以形成一个链接,用一个参数打开一个Android应用程序,无论该应用程序是否已安装,该链接都会起作用?


共有3个答案

华衡
2023-03-14

这个问题很老,但也很受欢迎,所以现在这个用例得到了Firebase的正式支持,确切地说是Firebase动态链接,这一点绝对值得了解。

它只支持打开应用程序和延迟深度链接,这意味着在安装应用程序后,当应用程序启动时,您可以检索用于安装应用程序的数据(链接)。

它建立在应用程序链接之上,所以你仍然需要和以前一样的intent过滤器。

简而言之,您需要添加implementation'com.google.firebase:firebase动态链接:版本“并从FirebaseDynamicClinks类的实例中检索链接。

当然,你需要用Firebase控制台中生成的链接来更改网站上的链接,但好消息是这些链接是“动态的”(顾名思义),所以它们可以在所有系统上工作。

对于所有详细的信息和设置用例在这里:https://firebase.google.com/docs/dynamic-links/use-cases/web-to-app

戚繁
2023-03-14

您可以尝试使用此方案(发送给用户):

intent://details?id=X&url=Y&referrer=Z#Intent;scheme=market;action=android.intent.action.VIEW;package=com.android.vending;end";

X:应用程序的程序包名称

Y:应该在应用程序的清单中定义的深度链接方案。(请参考这个)在这里,他们使用了这个网址作为例子:“http://www.example.com/gizmos”,因此Y应该被这个网址取代。

Z:可以是任何您想通过Google Play传递到应用程序的数据。请注意,您传递的任何数据都不应该是

根据我的实验,浏览器可以理解这个URL,它会根据包名和深度链接方案将你重定向到应用程序。否则它会带你去谷歌游戏。

附言:谷歌播放会向应用程序发送广播。所以确保你在接收器中接收广播。

司马高昂
2023-03-14

这种变通方法可能会奏效:

>

在应用程序中,将服务器端链接注册为深度链接:

<data android:scheme="https"
          android:host="www.foo.com"
          android:pathPrefix="/bar" />

现在,如果安装了该应用程序,将捕获URL,并解析路径以提取BlahBlah部分。如果未安装该应用程序,按链接将用户重定向到具有参考URL的Play store。

笔记:

  • /bar/BlahBlah已转换为

 类似资料:
  • 我在Android上使用了一个用Ionic构建的应用程序中的deep link。当我点击链接时,应用程序打开了,但仅仅一秒钟后就崩溃了。如何调试此问题? 这是AndroidManifest.xml中的意图代码: 更新 通过使用Android Studio,我有以下日志:

  • 我想为我的cordova android应用程序启用应用程序索引,如下所述:https://developers.google.com/app-indexing/webmasters/app 不幸的是,我找不到留档如何做一个科尔多瓦的应用程序。有一个插件收听和广播意向,但我不认为这将帮助我在这种情况下:https://github.com/Initsogar/cordova-webintent 我

  • 当我尝试从手机打开时,手机会提示我是否要使用浏览器或google play,如果我选择了第二个,它会打开google play商店的移动版本。 你能告诉我这事怎么会一下子发生吗?我的意思是不问我,而是直接打开手机版的google play,就是我直接从手机上打开时看到的。

  • 因此,我试图找出是否有可能深度链接当前未安装该应用程序的用户。以下是我试图做的:1)用户在移动浏览器中点击网站上的深度链接。2) 用户将被带到应用商店安装应用3)一旦安装,用户将被带到应用中特定内容的深层链接。 到目前为止,我发现的最接近Android应用程序安装横幅的东西,但这并不是我想要的。这可能吗? 以下是页面底部附近Android应用安装横幅的链接:https://medium.com/@

  • 我想创建一个深层链接,当用户按下一个共享按钮,我分享这样的链接-(例如网址)https://www.myapp.com/Home_page(我已经购买了一个域,我的应用程序也可以在播放商店),并希望当用户点击此链接时,他们应该重定向到我的应用程序的Home_page活动,但当我点击页面未找到显示。 我的舱单代码是:- 现在我不明白该怎么办