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


บัญชีบริการมีประโยชน์สำหรับการตั้งค่า 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: เปิดใช้ Firebase App Distribution API ในคอนโซล Google 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"
                  }
              }
          }
      
          // ...
      
      }
      

      คุณระบุข้อมูลเข้าสู่ระบบในโค้ดของแอปแทนได้โดยทำตามขั้นตอนด้านล่าง (ไม่บังคับ)

    • สําหรับ FirebaseCLI, fastlane หรือ Gradle: ตั้งค่าตัวแปรสภาพแวดล้อม GOOGLE_APPLICATION_CREDENTIALS เป็นเส้นทางของไฟล์ JSON ของคีย์ส่วนตัว ดังนี้

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