ตรวจสอบสิทธิ์ด้วยบัญชีบริการ

บัญชีบริการมีประโยชน์ในการตั้งค่า App Distribution ในสภาพแวดล้อม CI การตรวจสอบสิทธิ์ด้วยบัญชีบริการช่วยให้คุณใช้ไลบรารีของไคลเอ็นต์ (เช่น Firebase CLI, Gradle และ Fastlane) เพื่อแจกจ่ายบิลด์ได้ เมื่อคุณใช้บัญชีบริการในการตรวจสอบสิทธิ์ Firebase จะใช้ข้อมูลเข้าสู่ระบบเริ่มต้นแอปพลิเคชัน (ADC) เพื่อค้นหาข้อมูลเข้าสู่ระบบของแอป ซึ่งคุณจะระบุได้โดยการตั้งค่าตัวแปรสภาพแวดล้อม GOOGLE_APPLICATION_CREDENTIALS หรือชี้ไปยังเส้นทางคีย์บัญชีบริการในโค้ดของแอป

  1. เปิดคอนโซล Google Cloud แล้วเลือกโปรเจ็กต์
  2. คลิกสร้างบัญชีบริการ แล้วป้อนรายละเอียดของบัญชีบริการ
  3. คลิกสร้างและดำเนินการต่อ
  4. เพิ่มบทบาทผู้ดูแลระบบ Firebase App Distribution แล้วคลิกเสร็จสิ้น
  5. สร้างคีย์ JSON ส่วนตัวและย้ายคีย์ไปยังตำแหน่งที่สภาพแวดล้อมบิลด์ของคุณเข้าถึงได้ อย่าลืมเก็บไฟล์นี้ไว้ในที่ปลอดภัย เพราะไฟล์ให้สิทธิ์การเข้าถึงระดับผู้ดูแลระบบสำหรับ App Distribution ในโปรเจ็กต์ Firebase
  6. ข้ามขั้นตอนนี้หากคุณสร้างแอปหลังจากวันที่ 20 กันยายน 2019: ในคอนโซล Google APIs ให้เปิดใช้ Firebase App Distribution API เมื่อได้รับข้อความแจ้ง ให้เลือกโปรเจ็กต์ที่มีชื่อเดียวกับโปรเจ็กต์ 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