当网站由多个应用处理时,如何创建assetlinks.json

app*_*rer 2 android json deep-linking applinks

为了将我的应用程序链接到网页,需要定义如下的assetlink.json。

[{
"relation": ["delegate_permission/common.handle_all_urls"],
  "target": {
    "namespace": "android_app",
    "package_name": "package name",
    "sha256_cert_fingerprints":
    [key]
  }
}]
Run Code Online (Sandbox Code Playgroud)

我的网站有许多模块,例如新闻网站中的示例,其中有独立的部分,如新闻,汽车评论,小工具评论,星座/天文学,烹饪,直播电视等。在这种情况下,新闻门户网站的每个模块都有android应用单独的android应用,而所有模块都在单个域下。那么我们如何定义我们的assetlink.json

Nex*_*012 5

将网站与多个应用程序相关联(以回答“当网站由多个应用程序处理时如何创建assetlinks.json”)

https://developer.android.com/training/app-links/verify-site-associations#multi-subdomain

网站可以在同一assetlinks.json文件中声明与多个应用程序的关联。以下文件清单显示了一个声明文件的示例,该文件分别声明与两个应用程序的关联,并且位于https://www.example.com/.well-known/assetlinks.json

[{
  "relation": ["delegate_permission/common.handle_all_urls"],
  "target": {
    "namespace": "android_app",
    "package_name": "com.example.puppies.app",
    "sha256_cert_fingerprints":
    ["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"]
  }
  },
  {
  "relation": ["delegate_permission/common.handle_all_urls"],
  "target": {
    "namespace": "android_app",
    "package_name": "com.example.monkeys.app",
    "sha256_cert_fingerprints":
    ["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"]
  }
}]
Run Code Online (Sandbox Code Playgroud)

  • 这很有趣,但我无法意识到,如果两个应用程序都安装在一台设备上,它们如何处理相同的应用程序链接。对我来说,有旧应用程序和新应用程序 - 它们具有不同的应用程序 id,并且它们都被添加到 assetlinks.json 中。但是,当单击应用程序链接并安装它们时,只会打开旧应用程序。怎么解决这个问题呢? (2认同)
  • 如果您需要根据安装的多个应用程序有条件地处理类似的 URL 或相同的 URL,可以使用意图过滤器“优先级”值。https://developer.android.com/guide/topics/manifest/intent-filter-element#priority (2认同)