อัปเดต:คำอธิบายต่อไปนี้สำหรับโครงการ Android Studio หนึ่งโครงการที่มี Firebase หนึ่งโครงการและแอป Firebase ที่แตกต่างกันภายในโครงการนั้น หากเป้าหมายคือการมีไฟล์ JSON ที่แตกต่างกันสำหรับแอป Firebase ที่แตกต่างกันในโครงการ Firebase ที่แตกต่างกันในโครงการ Android Studio เดียวกัน (หรือถ้าคุณไม่รู้ว่าอะไรคือความแตกต่าง) ดูที่นี่ .
คุณต้องมี Firebase App หนึ่งตัวต่อหนึ่งรหัสแอปพลิเคชัน Android (โดยปกติจะเป็นชื่อแพ็คเกจ) เป็นเรื่องปกติที่จะมี ID แอปพลิเคชันหนึ่งรายการต่อชุดสร้าง Gradle (นี่จะเป็นไปได้ถ้าคุณใช้ประเภทการสร้าง Gradle และรสชาติการสร้าง Gradle)
ตั้งแต่Google Services 3.0และการใช้Firebaseไม่จำเป็นต้องสร้างไฟล์ที่แตกต่างสำหรับรสชาติที่แตกต่างกัน การสร้างไฟล์ที่แตกต่างกันสำหรับรสชาติที่แตกต่างกันอาจไม่ชัดเจนหรือตรงไปตรงมาในกรณีที่คุณมีผลิตภัณฑ์ประเภท Flavours และ Build ซึ่งประกอบขึ้นด้วยกัน
ในไฟล์เดียวกันคุณจะมีการกำหนดค่าทั้งหมดที่คุณต้องการสำหรับบิลด์ประเภทและรสชาติ
ในคอนโซล Firebase คุณต้องเพิ่มหนึ่งแอปต่อชื่อแพ็คเกจ ลองนึกภาพว่าคุณมี 2 รสชาติ (dev and live) และ 2 build build (debug and release) ขึ้นอยู่กับการกำหนดค่าของคุณ แต่เป็นไปได้ว่าคุณจะมี 4 ชื่อแพ็คเกจที่ต่างกันเช่น:
- com.stackoverflow.example (live - release)
- com.stackoverflow.example.dev (live - dev)
- com.stackoverflow.example.debug (debug - release)
- com.stackoverflow.example.dev.debug (debug - dev)
คุณต้องมีแอพ Android 4 ตัวใน Firebase Console (ในแต่ละอันคุณต้องเพิ่ม SHA-1 สำหรับการดีบักและใช้งานจริงสำหรับคอมพิวเตอร์แต่ละเครื่องที่คุณใช้งานอยู่)
เมื่อคุณดาวน์โหลดไฟล์ google-services.json จริงๆแล้วมันไม่สำคัญเลยว่าแอพที่คุณดาวน์โหลดมานั้นจะมีข้อมูลเดียวกันที่เกี่ยวข้องกับแอพทั้งหมดของคุณ
ตอนนี้คุณต้องค้นหาไฟล์นี้ในระดับแอพ (แอพ /)
หากคุณเปิดไฟล์นั้นคุณจะเห็นว่าหากมีข้อมูลทั้งหมดสำหรับชื่อแพ็คเกจทั้งหมดของคุณ
จุดปวดใช้เป็นปลั๊กอิน เพื่อให้มันใช้งานได้คุณจะต้องค้นหาปลั๊กอินที่ด้านล่างของไฟล์ของคุณ ดังนั้นสายนี้ ..
apply plugin: 'com.google.gms.google-services'
... ต้องอยู่ที่ด้านล่างของไฟล์ build.gradle แอปของคุณ
สำหรับการกล่าวถึงที่นี่ส่วนใหญ่มันใช้กับรุ่นก่อนหน้าเช่นกัน ฉันไม่เคยมีไฟล์ที่แตกต่างกันสำหรับการกำหนดค่าที่แตกต่างกัน แต่ตอนนี้ด้วยคอนโซล Firebase นั้นง่ายกว่าเพราะพวกเขามีไฟล์เดียวที่มีทุกสิ่งที่คุณต้องการสำหรับการกำหนดค่าทั้งหมด