使用自定义参数 (App Links) 通过 Firebase Dynamic Link 打开 Instant App

opening an Instant App by a Firebase Dynamic Link with custom parameters (App Links)

我正在寻找一种在移动浏览器中打开 Android 免安装应用程序的方法。 该应用程序支持应用程序 links(在 http/https 中深入 linking)。

我的 Android 应用程序作为即时应用程序运行,可以在非浏览器的不同应用程序(Gmail、Whatsapp 等)中由应用程序 link 打开。

我得出的结论是,在浏览器应用程序中获得即时体验的唯一方法是使用 Firebase 动态链接。

唯一有效的方法是使用短的 Firebase 动态链接(link 中没有应用参数)。我需要能够使用参数手动构建 link,以便该应用知道它需要的操作。

为了使用 Firebase 动态链接,我:

  1. 在我的应用中为 Firebase 动态链接设置所有基本要求。
  2. 设置子域并在 Firebase 控制台(托管部分)中启用它。

  3. 手动创建了一个长动态 link(link 描述为发送参数的唯一方法)。

示例: https://sub.example.com/?link=https://example.com/some-path/file?param1=value1&param2=value2&apn=package.name.com

这个长 link 只有在应用程序已安装/在缓存中时才有效(在移动浏览器中)。 如果应用程序未安装,应用程序的 Play 商店页面将打开并提供安装/试用(作为即时应用程序)。

我已经联系了 Firebase 支持,并得到了解决方案: 使用应用程序的值 link 在 link 中添加“afl”参数。

示例:

https://sub.example.com/?link=https://example.com/some-path/file?param1=value1&param2=value2&apn=package.name.com**&afl=https://example.com/some-path/file?param1=value1&param2=value2**

如果用户遵循以下步骤,Android 应用程序 link 可以正常工作:

  1. 确认您已登录 Google、Chrome,并且 Google 使用您计划用于免安装应用程序的帐户。

  2. 进入 Google Play 商店设置,找到 Instant Apps 选项卡并启用 Instant Apps enable Instant Apps

  3. 在您的网站中将 html 添加到 index.html 或您要放置嵌入式 link 的等效文件,例如:

    <!DOCTYPE html>                                                                                                                                                       
    <html>                                                                                                                                                              
    <body>                                                                                                                              
    <h2>HTML Links</h2>                                                                                                       
    <p>HTML links are defined with the a tag:</p>                                                                                
    <a href="https://example.com/path">This is a link to the instant app</a>                                   </body>                                                                                                                                      
    </html>
    
  4. 免安装应用程序 linking 仅适用于嵌入在应用程序(例如 gmail 或 Chrome 中的 links,而不是直接粘贴 url 在浏览器导航栏中。

如果您对此方法有任何疑问,请告诉我。