مثال: اعتبارنامه ها را در چندین وب سایت و چندین برنامه اندروید به اشتراک بگذارید

برای راه‌اندازی اشتراک‌گذاری اعتبار در چندین وب‌سایت و چندین برنامه Android، باید:

  • تعیین دامنه اصلی : یک URL را به عنوان نقطه مرجع اصلی برای پیوندها انتخاب کنید.
  • فایل‌های assetlinks.json را ایجاد کنید :
    • دامنه اصلی : یک فایل assetlinks.json در دامنه اصلی خود ایجاد کنید که تمام اعتبارنامه های اشتراک گذاری دامنه ها را فهرست می کند.
    • دامنه‌های دیگر : یک فایل assetlinks.json در هر یک از دامنه‌های دیگر ایجاد کنید، که هر کدام به دامنه اصلی پیوند داده می‌شوند.
  • پیوند دارایی دیجیتال را در مانیفست هر برنامه پیکربندی کنید : هر برنامه را طوری تنظیم کنید که به فایل assetlinks.json در دامنه اصلی پیوند داده شود.

در مثال زیر، ما example.com را به‌عنوان دامنه اصلی تعیین کردیم، و همه دامنه‌های فهرست‌شده دیگر اعتبارنامه‌ها را با example.com و در سراسر خودشان به اشتراک می‌گذارند.

دو برنامه با نام بسته های زیر نیز اعتبارنامه ها را با همه وب سایت ها و بین آنها به اشتراک می گذارند:

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

قبل از راه‌اندازی اشتراک‌گذاری اعتبار، باید پیش‌نیازها را تکمیل کنید .

برای اعلام اشتراک‌گذاری اعتبار در این وب‌سایت‌ها و برنامه‌های Android:

  1. یک فایل assetlinks.json با محتوای زیر ایجاد کنید:

    [
      {
        "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. فایل JSON پیوندهای دارایی دیجیتال را در مکان شناخته شده مربوطه در دامنه اصلی میزبانی کنید، در این مورد: https://example.com/.well-known/assetlinks.json .

  3. فایل assetlinks.json دیگری با محتوای زیر ایجاد کنید:

    [
      {
        "relation": ["delegate_permission/common.get_login_creds"],
        "target": {
          "namespace": "web",
          "site": "example.com"
        }
      }
    ]
    
  4. کپی‌های میزبان این فایل JSON پیوندهای دارایی دیجیتال در مکان زیر در سایر دامنه‌ها، در این مورد:

    • example.org/.well-known/assetlinks.json
    • example.net/.well-known/assetlinks.json
    • mypersonaldomain.com/.well-known/assetlinks.json
  5. خط زیر را به هر دو فایل مانیفست برنامه های Android در <application> اضافه کنید:

    <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
    
  6. با اعلام ارتباط در برنامه Android، پیوند دارایی دیجیتال را در مانیفست پیکربندی کنید. یک شی اضافه کنید که فایل‌های assetlinks.json را برای بارگیری مشخص می‌کند. در این مورد:

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

پس از انجام این مراحل، اشتراک‌گذاری اعتبار یکپارچه را در چندین وب‌سایت و برنامه اندروید با موفقیت راه‌اندازی کرده‌اید.