แนวทางปฏิบัติที่ดีที่สุดทั่วไปสำหรับการตั้งค่าโปรเจ็กต์ Firebase

หน้านี้แสดงแนวทางปฏิบัติที่ดีที่สุดทั่วไปในระดับสูงสำหรับการตั้งค่าโปรเจ็กต์ Firebase และการลงทะเบียนแอปกับโปรเจ็กต์ เพื่อให้คุณมี เวิร์กโฟลว์การพัฒนา ที่ชัดเจนโดยใช้สภาพแวดล้อมที่แตกต่างกัน เมื่อคุณคุ้นเคยกับแนวทางปฏิบัติที่ดีที่สุดในหน้านี้แล้ว ให้ตรวจสอบ หลักเกณฑ์ด้านความปลอดภัยทั่วไป ของเรา

การทำความเข้าใจลำดับชั้นของโปรเจ็กต์ Firebase

แผนภาพแสดงลำดับชั้นพื้นฐานของโปรเจ็กต์ Firebase รวมถึงโปรเจ็กต์ แอปที่ลงทะเบียน และทรัพยากรและบริการที่จัดเตรียมไว้ แผนภาพนี้แสดงลำดับชั้นพื้นฐานของโปรเจ็กต์ Firebase นี่คือความสัมพันธ์ที่สำคัญ:

  • โปรเจ็กต์ Firebase เปรียบเสมือนคอนเทนเนอร์สำหรับแอปทั้งหมดของคุณ ทรัพยากรและบริการใดๆ ที่จัดเตรียมไว้สำหรับโปรเจ็กต์

  • โปรเจ็กต์ Firebase สามารถลงทะเบียน แอป Firebase ได้อย่างน้อย 1 แอป (เช่น แอปเวอร์ชัน iOS และ Android หรือทั้งแอปเวอร์ชันฟรีและมีค่าใช้จ่าย)

  • แอป Firebase ทั้งหมดที่ลงทะเบียนในการ แชร์โปรเจ็กต์ Firebase เดียวกัน และมีสิทธิ์เข้าถึงทรัพยากรและบริการเดียวกันทั้งหมดที่จัดเตรียมไว้สำหรับโปรเจ็ กต์ นี่คือตัวอย่างบางส่วน:

    • แอป Firebase ทั้งหมดที่ลงทะเบียนในโปรเจ็กต์ Firebase เดียวกันจะใช้แบ็กเอนด์เดียวกัน เช่น โฮสติ้ง Firebase, การตรวจสอบสิทธิ์, ฐานข้อมูลเรียลไทม์, Cloud Firestore, Cloud Storage และ Cloud Functions

    • แอป Firebase ทั้งหมดที่ลงทะเบียนในโปรเจ็กต์ Firebase เดียวกันจะเชื่อมโยงกับพร็อพเพอร์ตี้ Google Analytics เดียวกัน โดยที่แอป Firebase แต่ละแอปจะเป็นสตรีมข้อมูลแยกต่างหากในพร็อพเพอร์ตี้นั้น

โปรเจ็กต์ Google Cloud เหมาะสมกับลำดับชั้นนี้ที่ไหน

แง่มุมหนึ่งของลำดับชั้นโปรเจ็กต์ Firebase ที่ไม่แสดงในแผนภาพด้านบนคือความสัมพันธ์กับโปรเจ็กต์ Google Cloud จริงๆ แล้ว โปรเจ็กต์ Firebase เป็นเพียงโปรเจ็กต์ Google Cloud ที่เปิดใช้งานการกำหนดค่าและบริการ เฉพาะของ Firebase เพิ่มเติม โปรดทราบว่าแอปทั้งหมดที่ลงทะเบียนในโปรเจ็กต์ Firebase เดียวกันยังแชร์และมีสิทธิ์เข้าถึงทรัพยากรและบริการ Google Cloud เดียวกันทั้งหมดด้วย

ดูข้อมูลเพิ่มเติมเกี่ยวกับความสัมพันธ์ของ Firebase และ Google Cloud ในการ ทำความเข้าใจโปรเจ็กต์ Firebase

การลงทะเบียนตัวแปรแอปกับโปรเจ็กต์ Firebase

เคล็ดลับสำคัญบางประการในการลงทะเบียนแอปเวอร์ชันต่างๆ กับโปรเจ็กต์ Firebase มีดังนี้

  • ตรวจสอบว่าแอปทั้งหมดที่ลงทะเบียนในโปรเจ็กต์ Firebase เป็น เวอร์ชันแพลตฟอร์มของแอปพลิเคชันเดียวกัน จากมุมมองของผู้ใช้ปลายทาง ลงทะเบียนแอปหรือเกมเดียวกันในเวอร์ชัน iOS, Android และเว็บด้วยโปรเจ็กต์ Firebase เดียวกัน

  • หากคุณมีบิลด์ เวอร์ชันต่างๆ ที่สามารถ แชร์ทรัพยากร Firebase เดียวกัน ได้ ให้ลงทะเบียนเวอร์ชันต่างๆ ด้วยโปรเจ็กต์ Firebase เดียวกัน ตัวอย่างบางส่วน ได้แก่ บล็อกและเว็บแอปในโครงการเดียวกัน หรือทั้งเวอร์ชันฟรีและมีค่าใช้จ่ายของแอปเดียวกันในโปรเจ็กต์เดียวกัน

  • หากคุณมีบิวด์ เวอร์ชันต่างๆ หลายเวอร์ชันที่ อิงตามสถานะการเผยแพร่ (แทนที่จะเป็นกิจกรรมหรือการเข้าถึงของผู้ใช้ปลายทางทั่วไป เช่น ด้านบน) ให้ลงทะเบียนแต่ละเวอร์ชันด้วยโปรเจ็กต์ Firebase ที่ แยกจากกัน ตัวอย่างคือดีบักและรีลีสบิลด์ – ลงทะเบียนบิลด์เหล่านี้แต่ละรายการในโปรเจ็กต์ Firebase ของตัวเอง

    • บิลด์ตามสถานะการเผยแพร่ไม่ควรแชร์ทรัพยากร Firebase เดียวกัน เนื่องจากอาจทำให้ข้อมูลการแก้ไขข้อบกพร่องของคุณเสียหายหรือทำลายล้างข้อมูลผลิตภัณฑ์ได้

    • แพลตฟอร์ม -รุ่นต่างๆ ของเวอร์ชันบิลด์แต่ละรายการเหล่านี้ควรอยู่ในโปรเจ็กต์ Firebase เดียวกัน ตัวอย่างเช่น ลงทะเบียนทั้งบิวด์ดีบัก iOS และ Android ในโครงการ Firebase "dev" เพราะทั้งคู่สามารถโต้ตอบกับข้อมูลและทรัพยากรที่ไม่ใช่ผลิตภัณฑ์เดียวกันได้

หลีกเลี่ยงการเช่าหลายราย

การเช่าหลายรายการสามารถนำไปสู่การกำหนดค่าที่ร้ายแรงและข้อกังวลด้านความเป็นส่วนตัวของข้อมูล รวมถึงปัญหาที่ไม่ได้ตั้งใจด้วยการรวมการวิเคราะห์ การตรวจสอบสิทธิ์ที่ใช้ร่วมกัน โครงสร้างฐานข้อมูลที่ซับซ้อนเกินไป และปัญหากับกฎความปลอดภัย

โดยทั่วไป หากชุดแอปไม่แชร์ข้อมูลและการกำหนดค่าเดียวกัน ให้ลองลงทะเบียนแต่ละแอปด้วยโปรเจ็กต์ Firebase ที่แตกต่างกัน

ตัวอย่างเช่น หากคุณพัฒนาแอปพลิเคชัน white-label แอปที่มีป้ายกำกับแยกกันควรมีโปรเจ็กต์ Firebase ของตัวเอง และเวอร์ชัน iOS และ Android ของป้ายกำกับนั้นควรอยู่ในโปรเจ็กต์ Firebase เดียวกัน แอปที่มีป้ายกำกับแยกกันแต่ละแอปไม่ควรแชร์ข้อมูลกับแอปอื่น (ด้วยเหตุผลด้านความเป็นส่วนตัว)

ขั้นตอนถัดไป