Aby skonfigurować udostępnianie danych logowania w przypadku wielu witryn i aplikacji na Androida:
- Wyznacz domenę podstawową: wybierz jeden URL jako główny punkt odniesienia dla linków.
- Utwórz pliki (
assetlinks.json
):- Domena podstawowa: w domenie podstawowej utwórz plik
assetlinks.json
zawierający dane logowania do wszystkich domen, w których udostępniane są dane logowania. - Inne domeny: w każdej z pozostałych domen utwórz plik
assetlinks.json
, który będzie się łączyć z domeną podstawową.
- Domena podstawowa: w domenie podstawowej utwórz plik
- Skonfiguruj linkowanie zasobów cyfrowych w pliku manifestu każdej aplikacji: skonfiguruj każdą aplikację tak, aby łączyła się z pliku
assetlinks.json
w głównej domenie.
W poniższym przykładzie wskazaliśmy example.com jako domenę podstawową, a wszystkie pozostałe domeny na tej liście mają wspólne dane logowania z domeną example.com i między sobą.
- example.com (domena podstawowa)
- example.org
- example.net
- myownpersonaldomain.com
2 aplikacje o tych nazwach pakietów mają też wspólne poświadczenia w przypadku wszystkich stron internetowych i między nimi:
com.example.android.myapplication
com.example.appname
Zanim skonfigurujesz udostępnianie danych logowania, musisz spełnić wymagania wstępne.
Aby zadeklarować udostępnianie danych logowania w tych witrynach i aplikacjach na Androida:
Utwórz plik
assetlinks.json
z tą zawartością:[ { "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" ] } } ]
Umieść plik JSON protokołu Digital Asset Links w odpowiedniej znanej lokalizacji w domenie głównej, w tym przypadku:
https://example.com/.well-known/assetlinks.json
.Utwórz kolejny plik
assetlinks.json
z tą zawartością:[ { "relation": ["delegate_permission/common.get_login_creds"], "target": { "namespace": "web", "site": "example.com" } } ]
Hostuj kopie tego pliku JSON protokołu Digital Asset Links w tej lokalizacji w innych domenach:
example.org/.well-known/assetlinks.json
example.net/.well-known/assetlinks.json
mypersonaldomain.com/.well-known/assetlinks.json
Dodaj ten wiersz do obu plików manifestu aplikacji na Androida w
<application>
:<meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
Skonfiguruj linkowanie zasobów cyfrowych w manifeście, deklarując powiązanie w aplikacji na Androida. Dodaj obiekt, który określa pliki
assetlinks.json
do wczytania. W tym przypadku:<string name="asset_statements" translatable="false"> [{ \"include\": \"https://example.com/.well-known/assetlinks.json\" }] </string>
Po wykonaniu tych czynności uda Ci się skonfigurować płynne udostępnianie danych logowania w wielu witrynach i aplikacjach na Androida.