Para configurar el uso compartido de credenciales en varios sitios web y apps para Android debes hacer lo siguiente:
- Designa un dominio principal: Elige una URL como punto de referencia principal. para ver los vínculos.
- Crea archivos
assetlinks.json
:- Dominio principal: Crea un archivo
assetlinks.json
en tu dominio principal. que enumera todos los dominios que comparten credenciales. - Otros dominios: Crea un archivo
assetlinks.json
en cada uno de los otros dominios dominios, cada uno de los cuales se vincula con el dominio principal.
- Dominio principal: Crea un archivo
- Configurar la vinculación de recursos digitales en el manifiesto de cada app: Configura cada app para
el vínculo al archivo
assetlinks.json
en el dominio principal.
En el siguiente ejemplo, designamos example.com como dominio principal, y todos los demás dominios enumerados comparten credenciales con example.com y entre ellas.
- example.com (dominio principal)
- ejemplo.org
- example.net
- myownpersonaldomain.com
Las dos apps con los siguientes nombres de paquete también comparten credenciales con todos los sitios web y entre ellos:
com.example.android.myapplication
com.example.appname
Antes de configurar el uso compartido de credenciales, debes completar los requisitos previos.
Para declarar el uso compartido de credenciales en estos sitios web y apps para Android, sigue estos pasos:
Crea un archivo
assetlinks.json
con el siguiente contenido:[ { "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" ] } } ]
Aloje el archivo JSON de Vínculos de recursos digitales en el recurso conocido correspondiente ubicación en el dominio principal, en este caso:
https://example.com/.well-known/assetlinks.json
Crea otro archivo
assetlinks.json
con el siguiente contenido:[ { "relation": ["delegate_permission/common.get_login_creds"], "target": { "namespace": "web", "site": "example.com" } } ]
Aloje copias de este archivo JSON de Vínculos de recursos digitales en la siguiente ubicación en los otros dominios, en este caso:
example.org/.well-known/assetlinks.json
example.net/.well-known/assetlinks.json
mypersonaldomain.com/.well-known/assetlinks.json
Agrega la siguiente línea a ambos archivos de manifiesto de apps para Android en
<application>
:<meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
Configura la vinculación de recursos digitales en el manifiesto declarando la asociación en la aplicación para Android. Agrega un objeto que especifique los archivos
assetlinks.json
cargar. En este caso, ocurre lo siguiente:<string name="asset_statements" translatable="false"> [{ \"include\": \"https://example.com/.well-known/assetlinks.json\" }] </string>
Después de seguir estos pasos, habrás configurado con éxito la credencial sin interrupciones. el uso compartido entre varios sitios web y apps para Android.