Contoh: Membagikan kredensial ke beberapa situs dan beberapa aplikasi Android
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Untuk menyiapkan berbagi kredensial di beberapa situs dan beberapa aplikasi Android,
Anda harus:
- Tetapkan domain primer: Pilih satu URL sebagai titik referensi utama
untuk link.
- Membuat file
assetlinks.json
:
- Domain primer: Buat file
assetlinks.json
di domain primer Anda
yang mencantumkan semua domain yang berbagi kredensial.
- Domain lain: Buat file
assetlinks.json
di setiap domain
lain, yang masing-masing ditautkan kembali ke domain utama.
- Mengonfigurasi penautan aset digital di setiap manifes Aplikasi: Siapkan setiap aplikasi untuk
menautkan kembali ke file
assetlinks.json
di domain utama.
Dalam contoh berikut, kami menetapkan
example.com sebagai domain utama, dan semua domain
lainnya yang tercantum berbagi kredensial dengan
example.com dan di antara domain tersebut.
Kedua aplikasi dengan nama paket berikut juga berbagi kredensial dengan semua
situs dan di antara keduanya:
com.example.android.myapplication
com.example.appname
Sebelum menyiapkan berbagi kredensial, Anda harus menyelesaikan prasyarat.
Untuk mendeklarasikan berbagi kredensial di seluruh situs dan aplikasi Android ini:
Buat file assetlinks.json
dengan konten berikut:
[
{
"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"
]
}
}
]
Menghosting file JSON Digital Asset Links di lokasi umum
yang sesuai di domain utama, dalam hal ini:
https://example.com/.well-known/assetlinks.json
.
Buat file assetlinks.json
lain dengan konten berikut:
[
{
"relation": ["delegate_permission/common.get_login_creds"],
"target": {
"namespace": "web",
"site": "example.com"
}
}
]
Hosting salinan file JSON Digital Asset Links ini di lokasi berikut
di domain lain, dalam hal ini:
example.org/.well-known/assetlinks.json
example.net/.well-known/assetlinks.json
mypersonaldomain.com/.well-known/assetlinks.json
Tambahkan baris berikut ke kedua file manifes Aplikasi Android di bagian
<application>
:
<meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
Konfigurasikan penautan aset digital dalam manifes dengan mendeklarasikan pengaitan
di aplikasi Android. Tambahkan objek yang menentukan file assetlinks.json
untuk dimuat. Dalam hal ini:
<string name="asset_statements" translatable="false">
[{
\"include\": \"https://example.com/.well-known/assetlinks.json\"
}]
</string>
Setelah mengikuti langkah-langkah ini, Anda telah berhasil menyiapkan berbagi kredensial
yang lancar di beberapa situs dan aplikasi Android.
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-25 UTC.
[null,null,["Terakhir diperbarui pada 2025-07-25 UTC."],[],[],null,["# Example: Share credentials across multiple websites and multiple Android apps\n\nTo set up credential sharing across multiple websites and multiple Android apps\nyou must:\n\n- **Designate a primary domain**: Choose one URL as the primary reference point for links.\n- **Create `assetlinks.json` files** :\n - **Primary domain** : Create an `assetlinks.json` file on your primary domain that lists all domains sharing credentials.\n - **Other domains** : Create an `assetlinks.json` file on each of the other domains, each linking back to the primary domain.\n- **Configure digital asset linking in each App's manifest** : Set up each app to link back to the `assetlinks.json` file in the primary domain.\n\n| **Important:** While Google treats credential sharing relationships as transitive, individual [Digital Asset Links are\n| not](https://developers.google.com/digital-asset-links/reference/rpc/google.digitalassetlinks.v1).\n\nIn the following example, we designated\n[example.com](https://example.com/) as the primary domain, and all other\nlisted domains share credentials with\n[example.com](https://example.com/) and across themselves.\n\n- [example.com](https://example.com/) (primary domain)\n- [example.org](https://example.jp/)\n- [example.net](https://example.de/)\n- [myownpersonaldomain.com](http://myownpersonaldomain.com)\n\nThe two apps with the following package names also share credentials with all\nthe websites and between them:\n\n- `com.example.android.myapplication`\n- `com.example.appname`\n\nBefore setting up credential sharing you must [complete the prerequisites](/identity/credential-sharing/set-up#prerequisites).\n\nTo declare credential sharing across these websites and Android apps:\n\n1. Create an `assetlinks.json` file with the following content:\n\n [\n {\n \"relation\": [\"delegate_permission/common.get_login_creds\"],\n \"target\": {\n \"namespace\": \"web\",\n \"site\": \"https://example.com\"\n }\n },\n {\n \"relation\": [\"delegate_permission/common.get_login_creds\"],\n \"target\": {\n \"namespace\": \"web\",\n \"site\": \"https://example.org\"\n }\n },\n {\n \"relation\": [\"delegate_permission/common.get_login_creds\"],\n \"target\": {\n \"namespace\": \"web\",\n \"site\": \"https://example.net\"\n }\n },\n {\n \"relation\": [\"delegate_permission/common.get_login_creds\"],\n \"target\": {\n \"namespace\": \"web\",\n \"site\": \"https://myownpersonaldomain.com\"\n }\n },\n {\n \"relation\" : [\n \"delegate_permission/common.get_login_creds\"\n ],\n \"target\" : {\n \"namespace\" : \"android_app\",\n \"package_name\" : \"com.example.android.myapplication\",\n \"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\"\n ]\n }\n },\n {\n \"relation\" : [\n \"delegate_permission/common.get_login_creds\"\n ],\n \"target\" : {\n \"namespace\" : \"android_app\",\n \"package_name\" : \"com.example.appname\",\n \"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\"\n ]\n }\n }\n ]\n\n2. Host the Digital Asset Links JSON file in the corresponding well-known\n location on the primary domain, in this case:\n `https://example.com/.well-known/assetlinks.json`.\n\n3. Create another `assetlinks.json` file with the following content:\n\n [\n {\n \"relation\": [\"delegate_permission/common.get_login_creds\"],\n \"target\": {\n \"namespace\": \"web\",\n \"site\": \"example.com\"\n }\n }\n ]\n\n4. Host copies of this Digital Asset Links JSON file at the following location\n on the other domains, in this case:\n\n - `example.org/.well-known/assetlinks.json`\n - `example.net/.well-known/assetlinks.json`\n - `mypersonaldomain.com/.well-known/assetlinks.json`\n5. Add the following line to both Android Apps manifests files under\n `\u003capplication\u003e`:\n\n \u003cmeta-data android:name=\"asset_statements\" android:resource=\"@string/asset_statements\"/\u003e\n\n6. Configure digital asset linking in the manifest by declaring the association\n in the Android app. Add an object that specifies the `assetlinks.json` files\n to load. In this case:\n\n \u003cstring name=\"asset_statements\" translatable=\"false\"\u003e\n [{\n \\\"include\\\": \\\"https://example.com/.well-known/assetlinks.json\\\"\n }]\n \u003c/string\u003e\n\nAfter following these steps, you have successfully set up seamless credential\nsharing across multiple websites and Android apps."]]