Check out what’s new from Firebase at Google I/O 2022. Learn more

ทำความเข้าใจโปรเจ็กต์ Firebase

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

ความสัมพันธ์ระหว่างโปรเจ็กต์ Firebase แอป และผลิตภัณฑ์

โปรเจ็กต์ Firebase เป็นเอนทิตีระดับบนสุดสำหรับ Firebase ในโครงการ คุณสามารถลงทะเบียนแอป Apple, Android หรือเว็บได้ หลังจากที่คุณลงทะเบียนแอปกับ Firebase แล้ว คุณสามารถเพิ่ม Firebase SDK สำหรับ ผลิตภัณฑ์ Firebase จำนวนเท่าใดก็ได้ เช่น Analytics, Cloud Firestore, การตรวจสอบประสิทธิภาพ หรือการกำหนดค่าระยะไกล

เรียนรู้ข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับกระบวนการนี้ในคู่มือการเริ่มต้นใช้งานสำหรับแพลตฟอร์มของคุณ:
iOS+ | Android | เว็บ | สามัคคี | C++ | กระพือ .

การทำความเข้าใจลำดับชั้นของโปรเจ็กต์ 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 แต่ละแอปจะเป็นสตรีมข้อมูลแยกต่างหากในพร็อพเพอร์ตี้นั้น

ความสัมพันธ์ระหว่างโปรเจ็กต์ Firebase กับ Google Cloud

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

เนื่องจากโปรเจ็กต์ Firebase เป็น โปรเจ็กต์ Google Cloud:

  • คุณสามารถโต้ตอบกับโปรเจ็กต์ใน คอนโซล Firebase เช่นเดียวกับใน Google Cloud Console และใน คอนโซล Google API

  • คุณสามารถใช้ผลิตภัณฑ์และ API จากทั้ง Firebase และ Google Cloud ในโปรเจ็กต์

  • มีการแชร์การ เรียกเก็บเงิน และการ อนุญาต สำหรับโปรเจ็กต์ใน Firebase และ Google Cloud

  • ตัวระบุที่ไม่ซ้ำสำหรับโปรเจ็กต์ (เช่น หมายเลข โปรเจ็กต์ และ ID โปรเจ็ กต์ ) มีการแชร์ระหว่าง Firebase และ Google Cloud

  • การลบโปรเจ็กต์จะเป็นการลบทั่วทั้ง Firebase และ Google Cloud

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

คุณสามารถตั้งค่าโปรเจ็กต์ Firebase และลงทะเบียนแอปใน คอนโซล Firebase (หรือสำหรับกรณีการใช้งานขั้นสูง ผ่าน Firebase Management REST API หรือ Firebase CLI ) เมื่อคุณตั้งค่าโปรเจ็กต์และลงทะเบียนแอป คุณจะต้องตัดสินใจเกี่ยวกับองค์กรและเพิ่มข้อมูลการกำหนดค่าเฉพาะของ Firebase ให้กับโปรเจ็กต์ในพื้นที่ของคุณ

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

การโต้ตอบกับโปรเจ็กต์ Firebase

นอกจาก SDK ของผลิตภัณฑ์แล้ว คุณยังโต้ตอบกับโปรเจ็กต์ Firebase ได้โดยตรงโดยใช้เครื่องมือและอินเทอร์เฟซต่างๆ

คอนโซล Firebase

คอนโซล Firebase มีสภาพแวดล้อมที่สมบูรณ์ที่สุดสำหรับการจัดการผลิตภัณฑ์ แอป และการตั้งค่าระดับโปรเจ็กต์ของ Firebase

คอนโซล Firebase - หน้าจอภาพรวมโปรเจ็กต์

แผงด้านซ้ายของคอนโซลแสดงรายการผลิตภัณฑ์ Firebase ซึ่งจัดตามหมวดหมู่ระดับบนสุด ที่ด้านบนของแผงด้านซ้าย ให้เข้าถึงการตั้งค่าของโปรเจ็กต์โดยคลิก การตั้งค่าของโปรเจ็กต์รวมถึง การรวมระบบ สิทธิ์การเข้าถึง และ การเรียกเก็บเงิน

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

โปรดทราบว่าเนื่องจากโปรเจ็กต์ Firebase เป็นโปรเจ็กต์ Google Cloud ด้วย คุณอาจพบว่างานหรือผลิตภัณฑ์ต่างๆ ต้องการให้คุณใช้ Google Cloud Console แทนคอนโซล Firebase

Firebase CLI (เครื่องมือบรรทัดคำสั่ง)

Firebase ยังมี Firebase CLI สำหรับการกำหนดค่าและจัดการผลิตภัณฑ์ Firebase เฉพาะ เช่น Firebase Hosting, Cloud Functions for Firebase และ Firebase Extensions

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

Firebase Management REST API

การใช้ Firebase Management REST API ทำให้คุณสามารถจัดการโปรเจ็กต์ Firebase ทางโปรแกรมได้ ตัวอย่างเช่น คุณสามารถลงทะเบียนแอปโดยใช้โปรแกรมกับโปรเจ็กต์หรือแสดงรายการแอปที่ลงทะเบียนแล้ว ( iOS+ | Android | เว็บ )

ตัวระบุโปรเจ็กต์ Firebase

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

ชื่อโครงการ

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

คุณแก้ไขชื่อโปรเจ็กต์ได้ทุกเมื่อในการ โปรเจ็ กต์ของคอนโซล Firebase ชื่อโครงการจะแสดงในบานหน้าต่างด้านบน

เลขที่โครงการ

โปรเจ็กต์ Firebase (และโปรเจ็กต์ Google Cloud ที่เกี่ยวข้อง ) มี หมายเลขโปรเจ็ กต์ นี่คือตัวระบุมาตรฐานที่ไม่ซ้ำกันทั่วโลกซึ่งกำหนดโดย Google สำหรับโปรเจ็กต์ ใช้ตัวระบุนี้เมื่อกำหนดค่าการผสานรวมและ/หรือการเรียก API ไปยัง Firebase, Google หรือบริการของบุคคลที่สาม

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

รหัสโครงการ

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

ไฟล์กำหนดค่า Firebase และอ็อบเจ็กต์

เมื่อคุณลงทะเบียนแอปกับโปรเจ็กต์ Firebase คอนโซล Firebase จะมีไฟล์การกำหนดค่า Firebase (แอป Apple/Android) หรือออบเจ็กต์การกำหนดค่า (เว็บแอป) ที่คุณเพิ่มลงในไดเรกทอรีแอปในเครื่องโดยตรง

  • สำหรับแอป Apple คุณต้องเพิ่มไฟล์การกำหนดค่า GoogleService-Info.plist
  • สำหรับแอป Android คุณต้องเพิ่มไฟล์การกำหนดค่า google-services.json
  • สำหรับเว็บแอป คุณจะต้องเพิ่มออบเจ็กต์การกำหนดค่า Firebase

คุณสามารถ รับไฟล์การกำหนดค่า Firebase หรืออ็อบเจ็กต์ ได้ทุกเมื่อ

ไฟล์การกำหนดค่า Firebase หรืออ็อบเจ็กต์เชื่อมโยงแอปกับโปรเจ็กต์ Firebase และทรัพยากร (ฐานข้อมูล ที่เก็บข้อมูล เป็นต้น) การกำหนดค่าประกอบด้วย "ตัวเลือก Firebase" ซึ่งเป็นพารามิเตอร์ที่จำเป็นสำหรับ Firebase และบริการของ Google เพื่อสื่อสารกับ API เซิร์ฟเวอร์ Firebase และเพื่อเชื่อมโยงข้อมูลไคลเอ็นต์กับโปรเจ็กต์ Firebase และแอป Firebase นี่คือ "ตัวเลือก Firebase" ขั้นต่ำที่จำเป็น:

  • คีย์ API : สตริงเข้ารหัสอย่างง่ายที่ใช้เมื่อเรียก API บางตัวที่ไม่จำเป็นต้องเข้าถึงข้อมูลส่วนตัวของผู้ใช้ (ค่าตัวอย่าง: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO )

  • รหัสโปรเจ็ กต์ : ตัวระบุเฉพาะที่ผู้ใช้กำหนดสำหรับโปรเจ็กต์ใน Firebase และ Google Cloud ทั้งหมด ตัวระบุนี้อาจปรากฏใน URL หรือชื่อสำหรับทรัพยากร Firebase บางอย่าง แต่โดยทั่วไปควรถือเป็นชื่อแทนอำนวยความสะดวกในการอ้างอิงโปรเจ็กต์ (ค่าตัวอย่าง: myapp-project-123 )

  • Application ID ("AppID") : ตัวระบุเฉพาะสำหรับแอป Firebase ใน Firebase ทั้งหมดที่มีรูปแบบเฉพาะแพลตฟอร์ม:

    • แอป Firebase Apple: GOOGLE_APP_ID (ค่าตัวอย่าง: 1:1234567890:ios:321abc456def7890 )
      นี่ ไม่ใช่ รหัสบันเดิลของ Apple
    • แอป Firebase Android: mobilesdk_app_id (ค่าตัวอย่าง: 1:1234567890:android:321abc456def7890 )
      นี่ ไม่ใช่ ชื่อแพ็กเกจ Android หรือรหัสแอปพลิเคชัน Android
    • เว็บแอป Firebase: appId (ค่าตัวอย่าง: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

เนื้อหาของไฟล์การกำหนดค่าหรืออ็อบเจ็กต์ Firebase ถือเป็นสาธารณะ รวมถึง ID เฉพาะแพลตฟอร์มของแอป (Apple Bundle ID หรือชื่อแพ็คเกจ Android) และค่าเฉพาะโปรเจ็กต์ Firebase เช่น คีย์ API, ID โปรเจ็กต์, Realtime Database URL และ ชื่อที่เก็บข้อมูล Cloud Storage ด้วยเหตุนี้ ให้ ใช้กฎความปลอดภัยของ Firebase เพื่อปกป้องข้อมูลและไฟล์ของคุณใน ฐานข้อมูลแบบเรียลไทม์ , Cloud Firestore และ Cloud Storage

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

ขีดจำกัดทั่วไปสำหรับโปรเจ็กต์ แอป และเว็บไซต์ Firebase

ข้อจำกัดทั่วไปบางประการสำหรับโปรเจ็กต์ แอป และเว็บไซต์ Firebase มีดังนี้

  • จำนวนโครงการต่อบัญชี

    • แผนการกำหนดราคาแบบ Spark — โควตาการสร้างโครงการถูกจำกัดให้มีจำนวนน้อยกว่าของโปรเจ็กต์ (โดยปกติประมาณ 5-10)
    • แผนการกำหนดราคา Blaze — โควตาการสร้างโปรเจ็กต์ต่อบัญชีเพิ่มขึ้นอย่างมากตราบใดที่บัญชีสำหรับการเรียกเก็บเงินในระบบคลาวด์ที่เกี่ยวข้องอยู่ในสถานะดี

    ข้อจำกัดของโควตาการสร้างโครงการไม่ค่อยเป็นปัญหาสำหรับนักพัฒนาส่วนใหญ่ แต่ถ้าจำเป็น คุณสามารถ ขอเพิ่มโควตาโครงการ ได้

    โปรดทราบว่าการลบโปรเจ็กต์โดยสมบูรณ์ต้องใช้เวลา 30 วันและนับรวมในโควตาโปรเจ็กต์จนกว่าโปรเจ็กต์จะถูกลบโดยสมบูรณ์

  • จำนวนแอพต่อโปรเจ็กต์

    Firebase จำกัดจำนวนแอป Firebase ทั้งหมดภายในโปรเจ็กต์ Firebase ไว้ที่ 30 รายการ

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

    เรียนรู้เพิ่มเติมเกี่ยวกับ ขีดจำกัดของแอพต่อโปรเจ็ กต์ในคำถามที่พบบ่อย

  • จำนวนเว็บไซต์โฮสติ้งต่อโครงการ

    ฟีเจอร์หลายไซต์ของ Firebase Hosting รองรับไซต์สูงสุด 36 ไซต์ต่อโปรเจ็กต์

กำลังเปิดแอปของคุณ