如何将多个 SHA-256 指纹添加到 assetlinks.json 以验证 Android 链接?

Joh*_*nny 15 android digital-assets-links trusted-web-activity

我现在已经设置了资产链接,如下所示:

[
  {
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
      "namespace": "android_app",
      "package_name": "com.myapp.app",
      "sha256_cert_fingerprints":
      [
        "so:me:de:bu:gs:ha",
        "so:me:pr:od:sh:aa"
      ]
    }
  },
  {
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
      "namespace": "android_app",
      "package_name": "com.myapp.app.staging",
      "sha256_cert_fingerprints":
      [
        "so:me:de:bu:gs:ha",
        "so:me:pr:od:sh:aa"
      ]
    }
  }
]
Run Code Online (Sandbox Code Playgroud)

根据链接文档,该字段应该支持多个指纹,但我还没有找到任何如何格式化它的示例。鉴于它只是 JSON,我上面的格式化方式似乎应该可以正常工作,但是当我在该字段中有多个指纹时,我发现链接验证失败,而单个指纹似乎工作正常。

我在这里错过了一些非常明显的东西吗?

Séb*_*ZAT 24

I can't tell you why it's not working, as IMO it should work, but if you watch the documentation video at https://youtu.be/3bAQPnxLd4c?t=161 you will see you have to duplicate the entry.

In your case, your assetlinks.json will be :

[
  {
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
      "namespace": "android_app",
      "package_name": "com.myapp.app",
      "sha256_cert_fingerprints": ["so:me:de:bu:gs:ha"]
    }
  },
  {
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
      "namespace": "android_app",
      "package_name": "com.myapp.app",
      "sha256_cert_fingerprints": ["so:me:pr:od:sh:aa"]
    }
  },
  {
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
      "namespace": "android_app",
      "package_name": "com.myapp.app.staging",
      "sha256_cert_fingerprints": ["so:me:de:bu:gs:ha"]
    }
  },
  {
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
      "namespace": "android_app",
      "package_name": "com.myapp.app.staging",
      "sha256_cert_fingerprints": ["so:me:pr:od:sh:aa"]
    }
  }
]
Run Code Online (Sandbox Code Playgroud)