Beispiel: Anmeldedaten für mehrere Websites und Android-Apps freigeben

Wenn Sie die Freigabe von Anmeldedaten für mehrere Websites und mehrere Android-Apps einrichten möchten, müssen Sie Folgendes tun:

  • Primäre Domain festlegen: Wählen Sie eine URL als primären Bezugspunkt für Links aus.
  • assetlinks.json-Dateien erstellen:
    • Primäre Domain: Erstellen Sie in Ihrer primären Domain eine assetlinks.json-Datei, in der alle Domains aufgeführt sind, die Anmeldedaten gemeinsam nutzen.
    • Andere Domains: Erstellen Sie in jeder anderen Domain eine assetlinks.json-Datei, die jeweils auf die primäre Domain verweist.
  • Digital Asset-Verknüpfung im Manifest jeder App konfigurieren: Richten Sie jede App so ein, dass sie zur assetlinks.json-Datei in der primären Domain zurückverweist.

Im folgenden Beispiel wurde example.com als primäre Domain festgelegt. Alle anderen aufgeführten Domains haben dieselben Anmeldedaten wie example.com und sich selbst.

Die beiden Apps mit den folgenden Paketnamen teilen auch Anmeldedaten mit allen Websites und untereinander:

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

Bevor Sie die Freigabe von Anmeldedaten einrichten können, müssen Sie die Voraussetzungen erfüllen.

So deklarieren Sie die Freigabe von Anmeldedaten für diese Websites und Android-Apps:

  1. Erstellen Sie eine assetlinks.json-Datei mit folgendem Inhalt:

    [
      {
        "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. Hosten Sie die JSON-Datei „Digital Asset Links“ an dem entsprechenden bekannten Speicherort auf der primären Domain, in diesem Fall: https://example.com/.well-known/assetlinks.json.

  3. Erstellen Sie eine weitere assetlinks.json-Datei mit folgendem Inhalt:

    [
      {
        "relation": ["delegate_permission/common.get_login_creds"],
        "target": {
          "namespace": "web",
          "site": "example.com"
        }
      }
    ]
    
  4. Hosten Sie Kopien dieser Digital Asset Links-JSON-Datei unter dem folgenden Speicherort in den anderen Domains, in diesem Fall:

    • example.org/.well-known/assetlinks.json
    • example.net/.well-known/assetlinks.json
    • mypersonaldomain.com/.well-known/assetlinks.json
  5. Fügen Sie der Manifestdatei der beiden Android-Apps unter <application> die folgende Zeile hinzu:

    <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
    
  6. Konfigurieren Sie die Verknüpfung digitaler Assets im Manifest, indem Sie die Verknüpfung in der Android-App deklarieren. Fügen Sie ein Objekt hinzu, das die zu ladenden assetlinks.json-Dateien angibt. In diesem Fall gilt:

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

Nachdem Sie diese Schritte ausgeführt haben, haben Sie die nahtlose Freigabe von Anmeldedaten für mehrere Websites und Android-Apps eingerichtet.