设置在多个网站和多个 Android 应用之间共享凭据 您必须:
- 指定主域名:选择一个网址作为主要参考点 链接。
- 创建
assetlinks.json
文件:- 主域名:在主域名上创建
assetlinks.json
文件 其中列出了所有网域的共享凭据 - 其他域名:为各个域名分别创建一个
assetlinks.json
文件 网域,每个网域都链接回主网域。
- 主域名:在主域名上创建
- 在每个应用的清单中配置数字资产关联:将每个应用设置为
链接回主网域中的
assetlinks.json
文件。
在以下示例中,我们将 将 example.com 作为主域名,将其他所有 与以下网域共享凭据: example.com 以及整个网域。
具有以下软件包名称的两个应用也会与 和这两者之间:
com.example.android.myapplication
com.example.appname
在设置凭据共享之前,您必须满足前提条件。
如需声明在这些网站和 Android 应用之间共享凭据,请执行以下操作:
创建一个包含以下内容的
assetlinks.json
文件:[ { "relation": ["delegate_permission/common.get_login_creds"], "target": { "namespace": "web", "site": "https://example.com" } }, { "relation": ["delegate_permission/common.get_login_creds"], "target": { "namespace": "web", "site": "https://example.org" } }, { "relation": ["delegate_permission/common.get_login_creds"], "target": { "namespace": "web", "site": "https://example.net" } }, { "relation": ["delegate_permission/common.get_login_creds"], "target": { "namespace": "web", "site": "https://myownpersonaldomain.com" } }, { "relation" : [ "delegate_permission/common.get_login_creds" ], "target" : { "namespace" : "android_app", "package_name" : "com.example.android.myapplication", "sha256_cert_fingerprints" : [ "AA:BB:CC:DD:EE:FF:11:22:33:44:55:66:77:88:99:00:AA:BB:CC:DD:EE:FF:11:22:33:44:55:66:77:88:99:00" ] } }, { "relation" : [ "delegate_permission/common.get_login_creds" ], "target" : { "namespace" : "android_app", "package_name" : "com.example.appname", "sha256_cert_fingerprints" : [ "00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF" ] } } ]
将 Digital Asset Links JSON 文件托管在相应的众所周知的位置, 位置,在这种情况下:
https://example.com/.well-known/assetlinks.json
。创建另一个包含以下内容的
assetlinks.json
文件:[ { "relation": ["delegate_permission/common.get_login_creds"], "target": { "namespace": "web", "site": "example.com" } } ]
在以下位置托管此 Digital Asset Links JSON 文件的副本 在其他网域上,在此示例中为:
example.org/.well-known/assetlinks.json
example.net/.well-known/assetlinks.json
mypersonaldomain.com/.well-known/assetlinks.json
将下面这行代码添加到以下两个 Android 应用清单文件中
<application>
:<meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
在清单中通过声明关联来配置数字资产关联 。添加一个对象,用于指定
assetlinks.json
文件 等待加载。在此示例中:<string name="asset_statements" translatable="false"> [{ \"include\": \"https://example.com/.well-known/assetlinks.json\" }] </string>
完成以下步骤后,您已成功设置无缝凭据 在多个网站和 Android 应用之间共享数据。