Przykład: udostępnianie danych logowania w wielu witrynach i w wielu aplikacjach na Androida

Aby skonfigurować udostępnianie danych logowania w wielu witrynach i aplikacjach na Androida musisz:

  • Wyznacz domenę podstawową: wybierz jeden adres URL jako podstawowy punkt odniesienia .
  • Utwórz pliki (assetlinks.json):
      .
    • Domena podstawowa: utwórz plik assetlinks.json w domenie podstawowej. który zawiera listę wszystkich domen, które udostępniają dane logowania.
    • Inne domeny: utwórz plik assetlinks.json dla każdej z domen. , a każda z nich zawiera link z powrotem do domeny podstawowej.
  • Skonfiguruj połączenia zasobów cyfrowych w pliku manifestu każdej aplikacji: skonfiguruj każdą aplikację, aby link do pliku assetlinks.json w domenie podstawowej.
.

W poniższym przykładzie zaznaczyliśmy: example.com jako domenę podstawową, a wszystkie pozostałe wymienione domeny współdzielą dane logowania użytkownikowi example.com i między nimi.

Dwie aplikacje z tymi nazwami pakietów też mają takie same dane logowania między witrynami:

  • com.example.android.myapplication
  • com.example.appname

Przed skonfigurowaniem udostępniania danych logowania musisz spełnić wymagania wstępne.

Aby zadeklarować udostępnianie danych logowania w tych witrynach i aplikacjach na Androida:

  1. Utwórz plik assetlinks.json o takiej 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"
          ]
        }
      }
    ]
    
  2. Umieść plik JSON protokołu Digital Asset Links w odpowiednim dobrze znanym w domenie podstawowej, w tym przypadku: https://example.com/.well-known/assetlinks.json

  3. Utwórz kolejny plik assetlinks.json z tą zawartością:

    [
      {
        "relation": ["delegate_permission/common.get_login_creds"],
        "target": {
          "namespace": "web",
          "site": "example.com"
        }
      }
    ]
    
  4. Hostuj kopie tego pliku JSON protokołu Digital Asset Links w następującej lokalizacji z innych domen, w tym przypadku:

    • example.org/.well-known/assetlinks.json
    • example.net/.well-known/assetlinks.json
    • mypersonaldomain.com/.well-known/assetlinks.json
  5. Dodaj ten wiersz do obu plików manifestu aplikacji na Androida w sekcji <application>:

    <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
    
  6. Skonfiguruj łączenie komponentów cyfrowych w pliku manifestu, zadeklarując powiązanie w aplikacji na Androida. Dodaj obiekt, który określa pliki assetlinks.json . W tym przypadku:

    <string name="asset_statements" translatable="false">
    [{
      \"include\": \"https://example.com/.well-known/assetlinks.json\"
    }]
    </string>
    

Po wykonaniu tych czynności udało Ci się skonfigurować bezproblemowe dane logowania udostępnianie w wielu witrynach i aplikacjach na Androida.