动态 link 从 Firebase 返回空 JSON 字符串

Dynamic link returning empty JSON string from Firebase

我正在设置我的 Android 应用程序以支持电子邮件身份验证,作为任务的一部分,我需要创建一个动态 link,这是我在 Firebase 控制台中所做的。但是,当我测试 link (https://chiaramail.page.link/.well-known/assetlinks.json,我只得到空数据 ("[]")。还有其他事情需要发生吗?

我遇到了同样的问题。其实是因为,你需要提供SHA256而不是SAH1来为你的项目实现动态link。我试图通过项目设置将它添加到我现有的项目中。但这对我不起作用。

然后我创建了一个新项目,在sdk配置中我跳过了SHA1输入,完成sdk设置后,我进入项目设置并添加了SHA256。然后我尝试了 link <your dynamic link>/.well-known/assetlinks.json 。它成功了。

谢谢队友。

您不必创建新项目来解决此问题。

如果/.well-known/assetlinks.json return[],空数组你需要添加SHA256 Key到你的firebase项目。 关注 this 视频了解更多信息

解决方案:

  1. 删除现有的深层链接URL前缀
  2. 添加 SHA256
  3. 创建新的深层链接

最后检查新的深层链接 /.well-known/assetlinks.json 它会给出这样的东西

[{"relation":["delegate_permission/common.handle_all_urls"],"target":{"namespace":"android_app","package_name":"com.test.app","sha256_cert_fingerprints":["sha"]}}]

这意味着它可以正常工作。

对我来说,不需要创建新项目。只需转到项目设置,添加 SHA-256,然后等待大约 15-20 分钟即可在 assetlinks.json 站点上 up-to-date。

  • 无需等待的另一种更快的选择:
  1. 在项目设置中添加 SHA256
  2. 点击“动态链接”页面下拉菜单中的Add URL prefix
  3. 设置新的link

如果您已经设置了动态 link,则无需创建新的动态 link 来解决此问题。只需在项目设置中添加SHA256

注意:如果您的版本由 Google Play 签名,请转到 Play 控制台,打开应用程序。在左侧菜单中,转到设置 -> 应用程序完整性 -> 应用程序签名。在 App signing key certificate 下,复制 SHA-256 certificate fingerprint 并将其粘贴到 firebase 控制台 -> Android 的项目设置中。

有关更多详细信息或任何其他问题,请转到 link https://<your dynamic link>?d=1。 (?d=1很重要,就是调试你动态的流程link) 如果有问题,它会向您显示 The dynamic link has a warning.

之类的警告

展开警告,它会告诉你什么是错误的以及如何修复它。