با یک حساب سرویس احراز هویت


حساب‌های سرویس برای تنظیم App Distribution در یک محیط CI مفید هستند. احراز هویت با یک حساب سرویس به شما امکان می‌دهد از کتابخانه‌های کلاینت (مثلاً Firebase CLI، Gradle و fastlane) برای توزیع نسخه‌های ساخته شده خود استفاده کنید. هنگامی که از یک حساب سرویس برای احراز هویت استفاده می‌کنید، Firebase از Application Default Credentials (ADC) برای یافتن اعتبارنامه‌های برنامه شما استفاده می‌کند که می‌توانید با تنظیم متغیر محیطی GOOGLE_APPLICATION_CREDENTIALS یا با اشاره به مسیر کلید حساب سرویس خود در کد برنامه، آن را ارائه دهید.

  1. کنسول Google Cloud را باز کنید و پروژه خود را انتخاب کنید.
  2. روی ایجاد حساب کاربری سرویس کلیک کنید و جزئیات حساب کاربری سرویس را وارد کنید.
  3. روی ایجاد و ادامه کلیک کنید.
  4. نقش مدیر Firebase App Distribution را اضافه کنید و روی «انجام شد» کلیک کنید.
  5. یک کلید خصوصی JSON ایجاد کنید و کلید را به مکانی که برای محیط ساخت شما قابل دسترسی باشد، منتقل کنید. حتماً این فایل را در جایی امن نگه دارید ، زیرا به مدیر پروژه Firebase شما دسترسی به App Distribution را می‌دهد.
  6. اگر برنامه خود را بعد از 20 سپتامبر 2019 ایجاد کرده‌اید، از این مرحله صرف نظر کنید : در کنسول Google APIs، API Firebase App Distribution را فعال کنید. در صورت درخواست، پروژه‌ای را که همنام پروژه Firebase شماست، انتخاب کنید.

  7. اعتبارنامه حساب سرویس خود را ارائه دهید:

    • فقط برای Gradle : در فایل build.gradle خود، ویژگی serviceCredentialsFile را روی فایل JSON کلید خصوصی خود تنظیم کنید:

      android {
      
          // ...
      
          buildTypes {
              release {
                  firebaseAppDistribution {
                      serviceCredentialsFile="/absolute/path/to/credentials/file.json"
                      releaseNotesFile="/path/to/releasenotes.txt"
                      testers="ali@example.com, bri@example.com, cal@example.com"
                  }
              }
          }
      
          // ...
      
      }
      

      به صورت اختیاری، می‌توانید با دنبال کردن مرحله زیر، اعتبارنامه‌هایی را برای کد برنامه خود ارائه دهید.

    • برای Firebase CLI، fastlane یا Gradle : متغیر محیطی GOOGLE_APPLICATION_CREDENTIALS روی مسیر فایل JSON کلید خصوصی خود تنظیم کنید:

      export GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/credentials/file.json