มีความท้าทายอื่น ๆ หรือไม่เห็นปัญหาของคุณที่ระบุไว้ด้านล่างนี้หรือไม่? โปรด รายงานข้อบกพร่องหรือขอคุณสมบัติ และเข้าร่วมการสนทนา Stack Overflow
โครงการ Firebase และแอป Firebase
โครงการ Firebase คืออะไร
โปรเจ็กต์คือคอนเทนเนอร์สำหรับแอปทั้ง iOS, Android และเว็บ รองรับการแบ่งปันคุณสมบัติต่างๆเช่นฐานข้อมูลการกำหนดค่าและการแจ้งเตือนระหว่างแอปข้ามแพลตฟอร์มของคุณ
คุณควรเพิ่มเวอร์ชัน iOS, Android และเว็บแอปลงในโปรเจ็กต์เดียว คุณสามารถใช้หลายโปรเจ็กต์เพื่อรองรับสภาพแวดล้อมที่หลากหลายเช่นการพัฒนาการจัดเตรียมและการผลิต
ฉันจะเพิ่ม Firebase ในโปรเจ็กต์ Google Cloud ที่มีอยู่ได้อย่างไร
คุณอาจมีโครงการที่จัดการอยู่แล้วผ่าน Google Cloud Console หรือ คอนโซล Google APIs โดยค่าเริ่มต้นโครงการเหล่านี้จะปรากฏใน คอนโซล Firebase แต่ไม่ถือว่าเป็นโครงการ Firebase
หากต้องการเพิ่ม Firebase ในโครงการ Google Cloud ที่คุณมีอยู่ให้คลิก เพิ่มโครงการ ในหน้า Landing Page ของ คอนโซล Firebase จากนั้นเลือกโครงการของคุณในเมนู ชื่อโครงการ
ฉันสามารถมีโครงการได้กี่โครงการต่อบัญชี?
- แผน Spark แบบฟรี - โควต้าโปรเจ็กต์ของคุณถูก จำกัด ไว้ที่โปรเจ็กต์จำนวนน้อย (โดยปกติประมาณ 5-10 โปรเจ็กต์)
- แผนการชำระเงิน - โควต้าโครงการของคุณต่อบัญชีการเรียกเก็บเงินแบบคลาวด์จะเพิ่มขึ้นอย่างมากตราบใดที่บัญชีการเรียกเก็บเงินระบบคลาวด์ของคุณอยู่ในสถานะดี
การ จำกัด โควต้าโปรเจ็กต์ไม่ค่อยเป็นปัญหาสำหรับนักพัฒนาส่วนใหญ่ แต่หากจำเป็นคุณสามารถ ขอเพิ่มโควต้าโปรเจ็กต์ของคุณ ได้
โปรดทราบว่าการลบโครงการทั้งหมดต้องใช้เวลา 30 วันและจะนับรวมในโควต้าของคุณจนกว่าจะถูกลบทั้งหมด
ฉันสามารถมีแอป Firebase ในโปรเจ็กต์ Firebase ได้กี่แอป
โครงการ Firebase เป็นคอนเทนเนอร์สำหรับแอป Firebase ใน iOS, Android และเว็บ Firebase จำกัด จำนวนแอป Firebase ทั้งหมดภายในโปรเจ็กต์ Firebase ไว้ที่ 30
หลังจากจำนวนนี้ประสิทธิภาพจะลดลง (โดยเฉพาะสำหรับ Google Analytics) และในที่สุดเมื่อมีแอปจำนวนมากขึ้นฟังก์ชันการทำงานของผลิตภัณฑ์บางอย่างก็หยุดทำงาน นอกจากนี้การเพิ่มแอป Firebase ในโปรเจ็กต์จะสร้างรหัสไคลเอ็นต์ OAuth 2.0 ที่อยู่ภายใต้อย่างน้อยหนึ่งรหัส มีขีด จำกัด ของรหัสไคลเอ็นต์ประมาณ 30 รหัสที่สามารถสร้างได้ภายในโปรเจ็กต์เดียว
คุณควรตรวจสอบให้แน่ใจว่าแอป Firebase ทั้งหมดภายในโครงการ Firebase เดียวเป็นรูปแบบแพลตฟอร์มของแอปพลิเคชันเดียวกันจากมุมมองของผู้ใช้ปลายทาง ตัวอย่างเช่นหากคุณพัฒนาแอปพลิเคชัน White Label แต่ละแอปที่มีป้ายกำกับแยกกันควรมีโครงการ Firebase ของตัวเอง ไปที่ ทำความเข้าใจกับโครงการ Firebase เพื่อเรียนรู้แนวทางปฏิบัติที่ดีที่สุดเกี่ยวกับโครงการ Firebase และแอป Firebase
ในกรณีที่เกิดขึ้นไม่บ่อยนักโครงการของคุณต้องการแอปมากกว่า 30 แอปคุณสามารถขอเพิ่มขีด จำกัด แอปได้ โครงการของคุณต้องอยู่ในแผนการเรียกเก็บเงินของ Blaze เพื่อส่งคำขอนี้ ไปที่ Google Cloud Console เพื่อ ส่งคำขอ และประเมิน เรียนรู้เพิ่มเติมเกี่ยวกับ การจัดการโควต้า ในเอกสาร Google Cloud
ฉันจะหารหัสแอปสำหรับแอป Firebase ได้ที่ไหน
ในคอนโซล Firebase ไปที่ settings โครงการ เลื่อนลงไปที่การ์ด แอปของคุณ จากนั้นคลิกที่แอป Firebase ที่ต้องการเพื่อดูข้อมูลของแอปรวมถึง รหัสแอป
ตัวอย่างค่ารหัสแอปมีดังนี้
- แอป Firebase iOS:
1:1234567890:ios:321abc456def7890
- แอป Firebase Android:
1:1234567890:android:321abc456def7890
- Firebase Web Apps:
1:1234567890:web:321abc456def7890
ฉันจำเป็นต้องให้ SHA-1 เมื่อเพิ่มแอป Android หรือไม่?
Firebase Authentication ต้องใช้ ข้อมูล SHA-1 (เมื่อใช้การ ลงชื่อเข้าใช้ Google หรือการ ลงชื่อเข้าใช้ หมายเลขโทรศัพท์ ) และ ลิงก์แบบไดนามิกของ Firebase หากคุณไม่ได้ใช้คุณสมบัติเหล่านี้คุณไม่จำเป็นต้องให้ SHA-1
ฉันจะแก้ไขข้อผิดพลาดนี้ได้อย่างไร: "ไคลเอ็นต์ OAuth2 มีอยู่แล้วสำหรับชื่อแพ็กเกจนี้และ SHA-1 ในโปรเจ็กต์อื่น"
ข้อผิดพลาดนี้เกิดขึ้นหากเราตรวจพบว่าโปรเจ็กต์ Firebase หรือ Google Cloud อื่นมีรหัสไคลเอ็นต์ OAuth 2.0 พร้อมชื่อแพ็กเกจและ SHA-1 ที่คุณระบุ เรียนรู้วิธี แก้ไขข้อผิดพลาด นี้
เมื่อฉันเพิ่ม Firebase ในโครงการ Android ของฉันฉันได้รับข้อผิดพลาด "ไม่พบ"
ข้อผิดพลาดนี้มักจะหมายความว่าแอปของคุณขาดการอ้างอิงไปยังที่เก็บ Maven ของ Google อย่างน้อยหนึ่งรายการ ในโครงการระดับ build.gradle
ไฟล์ให้แน่ใจว่าจะรวมถึงพื้นที่เก็บข้อมูล Maven ของ Google ( google()
) ทั้งของคุณ buildscript
และ allprojects
ส่วน
ข้อกำหนดเบื้องต้นในการเชื่อมโยง Play / AdMob / AdWords / BigQuery กับโครงการ Firebase ของฉันคืออะไร
- ในการเชื่อมโยง บัญชี Play คุณต้องเป็นทั้งเจ้าของโปรเจ็กต์ Firebase และเจ้าของบัญชี Play
- ในการเชื่อมโยง แอป AdMob คุณต้องเป็นทั้งเจ้าของโครงการ Firebase และผู้ดูแลระบบ AdMob
- ในการเชื่อมโยง บัญชี AdWords ของ คุณคุณต้องเป็นทั้งเจ้าของโครงการ Firebase และผู้ดูแลระบบ AdWords
- ในการลิงก์ โครงการ BigQuery คุณต้องเป็นเจ้าของโครงการ Firebase
ฉันควรรวมประกาศโอเพ่นซอร์สใดไว้ในแอปของฉัน
ใน iOS พ็อด Firebase มีไฟล์ NOTICES ซึ่งรวมรายการที่เกี่ยวข้อง Firebase Android SDK มี Activity
ช่วย สำหรับแสดงข้อมูลใบอนุญาต
Firebase รองรับ Xcode เวอร์ชันใดบ้าง
Firebase รองรับ Xcode เวอร์ชันหลักไม่เกิน 2 เวอร์ชันโดยไม่รวม Xcode เวอร์ชันที่ Apple ไม่รองรับอีกต่อไป ตัวอย่างเช่นตั้งแต่เดือนมีนาคม 2019 เป็นต้นไป Apple ต้องใช้ iOS 12 เป็นอย่างน้อยในแอป iOS ทั้งหมดซึ่งหมายความว่าการรองรับ Xcode 9 จะถูกยกเลิกและ Xcode 10 จะเป็นเวอร์ชันหลักที่รองรับเท่านั้น
การเปลี่ยนแปลงเพื่อรองรับ Xcode เวอร์ชันรองหรือแพตช์เฉพาะ (เช่น 9.2.0 ถึง 9.4.1) จะพิจารณาจากความต้องการของ Firebase iOS SDK และการสำรวจการใช้งานของนักพัฒนาซอฟต์แวร์ การเปลี่ยนแปลงเหล่านี้จะแสดงใน บันทึกประจำรุ่น Firebase iOS SDK และใน หน้าการตั้งค่า Firebase iOS SDK
หากต้องการดูเวอร์ชัน Xcode ขั้นต่ำที่ Firebase iOS SDK รองรับให้ตรวจสอบข้อกำหนดที่ระบุไว้ใน เพิ่ม Firebase ในโครงการ iOS ของคุณ
การสนับสนุน Firebase สำหรับ Xcode รุ่นเบต้ามีให้โดยใช้ "ความพยายามอย่างเต็มที่" นักพัฒนาสามารถติดตามและส่งปัญหาในที่ เก็บ Firebase iOS SDK บน GitHub
คอนโซล Firebase
เบราว์เซอร์ที่รองรับการเข้าถึงคอนโซล Firebase คืออะไร
คุณสามารถเข้าถึงคอนโซล Firebase ได้จากเบราว์เซอร์เดสก์ท็อปยอดนิยมเวอร์ชันล่าสุดเช่น Chrome, Firefox, Safari และ Edge ขณะนี้เบราว์เซอร์มือถือยังไม่รองรับอย่างสมบูรณ์
เหตุใดคอนโซล Firebase จึงไม่โหลดให้ฉัน
ต่อไปนี้เป็นขั้นตอนการแก้ปัญหาเพื่อลองหากคุณมีปัญหาในการโหลดคอนโซล Firebase:
- ตรวจสอบแถว คอนโซล ของ แดชบอร์ดสถานะ Firebase สำหรับการหยุดชะงักของบริการที่อาจเกิดขึ้น
- ตรวจสอบให้แน่ใจว่าคุณใช้ เบราว์เซอร์ที่รองรับ
- ลองโหลดคอนโซล Firebase ในหน้าต่างที่ไม่ระบุตัวตนหรือหน้าต่างส่วนตัว
- ปิดการใช้งานส่วนขยายเบราว์เซอร์ทั้งหมด
- ตรวจสอบว่าอาจมีสิ่งใดขัดขวางการเชื่อมต่อของคุณเช่นซอฟต์แวร์ป้องกันไวรัสพร็อกซีเครือข่ายหรือไฟร์วอลล์ ถ้าเป็นเช่นนั้นให้ลองปิดการใช้งาน
- ลองโหลดคอนโซล Firebase โดยใช้เครือข่ายหรืออุปกรณ์อื่น
หากขั้นตอนการแก้ไขปัญหาข้างต้นไม่สามารถแก้ไขปัญหาได้โปรด ติดต่อฝ่ายสนับสนุน
ภาษาคอนโซล Firebase ของฉันถูกกำหนดอย่างไร
การตั้งค่าภาษาสำหรับคอนโซล Firebase จะขึ้นอยู่กับภาษาที่เลือกใน การตั้งค่าบัญชี Google ของ คุณ
หากต้องการเปลี่ยนการตั้งค่าภาษาของคุณโปรดดูที่ เปลี่ยนภาษา
คอนโซล Firebase รองรับภาษาต่อไปนี้:
- ภาษาอังกฤษ
- โปรตุเกสแบบบราซิล
- ฝรั่งเศส
- เยอรมัน
- ชาวอินโดนีเซีย
- ญี่ปุ่น
- เกาหลี
- รัสเซีย
- ภาษาจีนตัวย่อ
- ภาษาสเปน
- ภาษาจีนตัวเต็ม
คอนโซล Firebase รองรับบทบาทและสิทธิ์ใดบ้าง
คอนโซล Firebase และ Google Cloud Console ใช้บทบาทและสิทธิ์พื้นฐานเดียวกัน เรียนรู้เพิ่มเติมเกี่ยวกับบทบาทและสิทธิ์ใน เอกสาร Firebase IAM
Firebase รองรับบทบาท พื้นฐาน (พื้นฐาน) ของเจ้าของผู้แก้ไขและผู้ดู:
- เจ้าของ โปรเจ็กต์สามารถเพิ่มสมาชิกคนอื่น ๆ ในโปรเจ็กต์ตั้งค่า การผสานรวม (โปรเจ็กต์ที่ลิงก์กับบริการเช่น BigQuery หรือ Slack) และมีสิทธิ์แก้ไขโปรเจ็กต์โดยสมบูรณ์
- ผู้ แก้ไข โครงการมีสิทธิ์แก้ไขโครงการโดยสมบูรณ์
- ผู้ ดู โปรเจ็กต์มีสิทธิ์อ่านสำหรับโปรเจ็กต์เท่านั้น โปรดทราบว่าคอนโซล Firebase ไม่ได้ซ่อน / ปิดใช้งานการควบคุม UI แก้ไขจาก Project Viewers แต่การดำเนินการเหล่านี้จะล้มเหลวสำหรับสมาชิกโปรเจ็กต์ที่กำหนดบทบาท Viewer
Firebase ยังรองรับ:
- บทบาทที่กำหนดไว้ล่วงหน้าของ Firebase - บทบาทเฉพาะ Firebase ที่ดูแลจัดการซึ่งช่วยให้สามารถควบคุมการเข้าถึงได้ละเอียดกว่าบทบาทพื้นฐานของเจ้าของผู้แก้ไขและผู้ดู
- บทบาทที่กำหนดเอง - บทบาท IAM ที่กำหนดเองโดยสมบูรณ์ที่คุณสร้างขึ้นเพื่อปรับแต่งชุดสิทธิ์ที่ตรงตามข้อกำหนดเฉพาะขององค์กรของคุณ
ราคา
จ่ายสินค้าตัวไหน ที่ฟรี?
ผลิตภัณฑ์โครงสร้างพื้นฐานแบบชำระเงินของ Firebase ได้แก่ Realtime Database, Cloud Storage สำหรับ Firebase, ฟังก์ชัน, Hosting, Test Lab และการตรวจสอบสิทธิ์โทรศัพท์ เรามีระดับฟรีสำหรับคุณสมบัติทั้งหมดนี้
นอกจากนี้ Firebase ยังมีผลิตภัณฑ์ฟรีอีกมากมายเช่น Analytics, Cloud Messaging, the Notifications composer, Remote Config, App Indexing, Dynamic Links และ Crash Reporting คุณสามารถใช้ผลิตภัณฑ์เหล่านี้ได้ไม่ จำกัด จำนวนในทุกแผนรวมถึงแผน Spark ฟรีของเรา นอกจากนี้คุณสมบัติการตรวจสอบสิทธิ์ทั้งหมดนอกเหนือจากการพิสูจน์ตัวตนทางโทรศัพท์นั้นฟรี
Firebase เสนอเครดิตทดลองใช้ฟรีสำหรับผลิตภัณฑ์แบบชำระเงินหรือไม่
สามารถใช้บริการแบบชำระเงินของ Firebase ภายใต้การ ทดลองใช้งาน Google Cloud ฟรี ผู้ใช้ Google Cloud และ Firebase ใหม่สามารถใช้ประโยชน์จากช่วงทดลองใช้งาน 90 วันซึ่งรวมเครดิตการเรียกเก็บเงินบนคลาวด์ฟรี $ 300 เพื่อสำรวจและประเมินผลิตภัณฑ์และบริการของ Google Cloud และ Firebase
ในช่วงทดลองใช้งาน Google Cloud ฟรีคุณจะได้รับบัญชีการเรียกเก็บเงินระบบคลาวด์สำหรับทดลองใช้ฟรี โครงการ Firebase ใด ๆ ที่ใช้บัญชีสำหรับการเรียกเก็บเงินนั้นจะอยู่ในแผนการเรียกเก็บเงินของ Blaze ในช่วงทดลองใช้งานฟรี
ไม่ต้องกังวลการตั้งค่าบัญชีการเรียกเก็บเงินระบบคลาวด์สำหรับทดลองใช้ฟรีนี้ไม่ได้ช่วยให้เราสามารถเรียกเก็บเงินจากคุณได้ คุณจะไม่ถูกเรียกเก็บเงินเว้นแต่คุณจะเปิดใช้งานการเรียกเก็บเงินอย่างชัดเจนโดยการอัปเกรดบัญชีการเรียกเก็บเงินแบบคลาวด์ทดลองใช้ฟรีเป็นบัญชีแบบชำระเงิน คุณสามารถอัปเกรดเป็นบัญชีแบบชำระเงินได้ตลอดเวลาในช่วงทดลองใช้งาน หลังจากอัปเกรดแล้วคุณยังสามารถใช้เครดิตที่เหลืออยู่ได้ (ภายในระยะเวลา 90 วัน)
เมื่อการทดลองใช้ฟรีสิ้นสุดลงคุณจะต้องดาวน์เกรดโครงการของคุณเป็นแผนการเรียกเก็บเงินของ Spark หรือ ตั้งค่า แผนการเรียกเก็บ เงินแบบจ่ายตามการใช้งานของ Blaze ในคอนโซล Firebase เพื่อใช้โครงการ Firebase ของคุณต่อไป
เรียนรู้เพิ่มเติมเกี่ยวกับการ ทดลองใช้ Google Cloud ฟรี
ฉันจะรู้ได้อย่างไรว่าแผนไหนเหมาะกับฉัน
แผนการเรียกเก็บเงิน Spark
แผน Spark ของเราเป็นสถานที่ที่ดีเยี่ยมในการพัฒนาแอปของคุณโดยไม่เสียค่าใช้จ่าย คุณจะได้รับคุณลักษณะ Firebase ฟรีทั้งหมด (Analytics, ตัวเรียบเรียงการแจ้งเตือน, การรายงานข้อขัดข้องและอื่น ๆ ) และคุณลักษณะโครงสร้างพื้นฐานแบบชำระเงินของเราจำนวนมาก อย่างไรก็ตามหากคุณใช้ทรัพยากรเกินแผน Spark ในเดือนปฏิทินแอปของคุณจะถูกปิดในช่วงที่เหลือของเดือนนั้น นอกจากนี้คุณลักษณะของ Google Cloud ยังไม่มีให้ใช้งานในระดับ Spark
แผนการเรียกเก็บเงินของ Blaze
แผน Blaze ของเราออกแบบมาสำหรับแอปที่ใช้งานจริง แผน Blaze ยังช่วยให้คุณสามารถขยายแอปของคุณด้วยคุณสมบัติ Google Cloud แบบชำระเงิน คุณจ่ายเฉพาะทรัพยากรที่คุณใช้เท่านั้นทำให้คุณสามารถปรับขนาดตามความต้องการได้ เรามุ่งมั่นที่จะทำให้ราคาแผน Blaze ของเราสามารถแข่งขันกับผู้ให้บริการคลาวด์ชั้นนำของอุตสาหกรรมได้
ฉันจะตรวจสอบการใช้งานและการเรียกเก็บเงินได้อย่างไร?
คุณติดตามการใช้ทรัพยากรโครงการในคอนโซล Firebase บนแดชบอร์ดต่อไปนี้ได้
- แดชบอร์ดการใช้งานและการเรียกเก็บเงิน
- แดชบอร์ดการใช้งาน Cloud Storage
- แดชบอร์ดการใช้ฐานข้อมูล (ทั้ง Cloud Firestore และ Realtime Database)
- แดชบอร์ดการใช้โฮสติ้ง
เกิดอะไรขึ้นกับแผนการเรียกเก็บเงินของ Flame
ตั้งแต่เดือนมกราคม 2020 แผนการเรียกเก็บเงินของ Flame ($ 25 / mo ของโควต้าเพิ่มเติม) จะไม่สามารถใช้ได้สำหรับการสมัครใหม่อีกต่อไป
- โครงการแผน Spark และ Blaze ที่มีอยู่และโครงการใหม่ใด ๆ จะไม่สามารถเปลี่ยนไปใช้หรือลงชื่อสมัครใช้แผน Flame ได้อีกต่อไป
- หากคุณย้ายโปรเจ็กต์แผนเฟลมที่มีอยู่ไปยังแผนการเรียกเก็บเงินอื่นโปรเจ็กต์จะไม่สามารถกลับไปที่แผนเฟลมได้
- โครงการแผนเปลวไฟที่มีอยู่สามารถใช้แผนเปลวไฟต่อไปได้ในตอนนี้ อย่างไรก็ตามคุณจะได้รับข้อมูลในไม่กี่เดือนข้างหน้าเกี่ยวกับระยะเวลาที่จำเป็นสำหรับการย้ายไปใช้แผนการเรียกเก็บเงินอื่น
- การอ้างอิงถึงแผนเปลวไฟถูกลบออกจากเอกสาร
คุณมีคำถามเพิ่มเติมเกี่ยวกับการเกษียณอายุของแผน Flame หรือไม่? อ่าน คำถามที่พบบ่อยเพิ่มเติม ด้านล่าง
ต้องการเรียนรู้เกี่ยวกับแผนการเรียกเก็บเงินอื่น ๆ ที่ Firebase นำเสนอหรือไม่ ไปที่ หน้าราคา Firebase ของเรา! หากคุณต้องการเริ่มย้ายโครงการที่มีอยู่ไปยังแผนการเรียกเก็บเงินอื่นคุณสามารถทำได้ใน คอนโซล Firebase สำหรับโครงการของคุณ
สำหรับโครงการแผน Flame ที่มีอยู่โควต้าของแผนและความพร้อมใช้งานของฟีเจอร์จะยังคงมีผล
- แผนเปลวไฟไม่ได้ให้โควต้าการใช้งานใด ๆ สำหรับผลิตภัณฑ์ต่อไปนี้:
BigQuery และ Google Cloud IaaS อื่น ๆ - แผน Flame รวมโควต้าการใช้งานฟรีสำหรับผลิตภัณฑ์ต่อไปนี้:
การทดสอบ A / B, การวิเคราะห์, การจัดทำดัชนีแอป, การส่งข้อความบนคลาวด์ (FCM), Crashlytics, ลิงก์แบบไดนามิก, การตรวจสอบประสิทธิภาพ, การคาดการณ์และการกำหนดค่าระยะไกล แผน Flame รวมโควต้าการใช้งานสำหรับผลิตภัณฑ์ต่อไปนี้:
สินค้า ลักษณะเฉพาะ รวมอยู่ในแผน Flame การรับรองความถูกต้อง การรับรองความถูกต้องทางโทรศัพท์ - สหรัฐอเมริกาแคนาดาและอินเดีย 10k / เดือน Phone Auth - ประเทศอื่น ๆ ทั้งหมด 10k / เดือน บริการและคุณสมบัติการพิสูจน์ตัวตนอื่น ๆ ✔ (ฟรี) Cloud Firestore การจัดเก็บข้อมูล รวม 2.5 GiB ขาออกเครือข่าย 20 GiB / เดือน เอกสารเขียน 100k / วัน เอกสารอ่าน 250k / วัน เอกสารลบ 100k / วัน Cloud Functions สำหรับ Firebase การเรียกร้อง 2M / เดือน GB- วินาที 400k / เดือน CPU วินาที 200k / เดือน เครือข่ายขาออก 5 GB / เดือน โฮสติ้ง การจัดเก็บข้อมูล รวม 10 GB การถ่ายโอนข้อมูล 50 GB / เดือน โดเมนที่กำหนดเองและ SSL ✔ (ฟรี) หลายไซต์ต่อโครงการ ✔ (ฟรี) Firebase ML โฮสติ้ง / การให้บริการแบบกำหนดเอง ✔ (ฟรี) ชุดข้อมูล AutoML Vision Edge 1k ภาพ / โครงการ การฝึกอบรม AutoML Vision Edge 3 ชั่วโมง / โครงการ Cloud Vision API ไม่รวม ฐานข้อมูลเรียลไทม์ การเชื่อมต่อพร้อมกัน 200k การจัดเก็บข้อมูล รวม 2.5 GB ดาวน์โหลดข้อมูล 20 GB / เดือน หลายฐานข้อมูลต่อโครงการ ไม่รวม การจัดเก็บเมฆ การจัดเก็บข้อมูล รวม 50 GB ดาวน์โหลดข้อมูล 50 GB / วัน อัปโหลดการดำเนินการ 100k / วัน ดาวน์โหลดการดำเนินการ 250k / วัน หลายถังต่อโครงการ ไม่รวม ห้องปฏิบัติการทดสอบ การทดสอบอุปกรณ์เสมือน 10 การทดสอบ / วัน การทดสอบอุปกรณ์ทางกายภาพ 5 การทดสอบ / วัน
คำถามที่พบบ่อยเพิ่มเติมเกี่ยวกับแผนเกษียณอายุของ Flame
จะเกิดอะไรขึ้นกับโครงการแผน Flame ที่มีอยู่ตอนนี้?
ในตอนนี้โครงการหรือการเรียกเก็บเงินของคุณไม่มีการเปลี่ยนแปลงใด ๆ อย่างไรก็ตามคุณจะได้รับข้อมูลในไม่กี่เดือนข้างหน้าเกี่ยวกับระยะเวลาที่จำเป็นสำหรับการย้ายไปใช้แผนการเรียกเก็บเงินอื่น
จะเกิดอะไรขึ้นกับโครงการ Flame ที่มีอยู่ของฉันในอนาคต
ในขณะนี้ยังไม่มีกำหนดการที่เฉพาะเจาะจงในการย้ายโครงการแผน Flame ไปยังแผนการเรียกเก็บเงินอื่น อย่างไรก็ตามคุณจะได้รับข้อมูลในไม่กี่เดือนข้างหน้าเกี่ยวกับระยะเวลาที่จำเป็นสำหรับการย้ายไปใช้แผนการเรียกเก็บเงินอื่น
ฉันมีโครงการ / กระบวนการ / รูปแบบธุรกิจที่อาศัยต้นทุน Firebase คงที่ ฉันควรทำอย่างไรดี?
ลงชื่อสมัครใช้แผนการจ่ายตามการใช้งานของ Blaze และอย่าลืมตั้งค่าการ แจ้งเตือนงบประมาณของ โครงการ
ฉันขอสิทธิ์พิเศษในการสร้างโครงการแผนเปลวไฟใหม่ได้ไหม
ไม่ Firebase ไม่ได้ให้การเข้าถึงพิเศษสำหรับโปรเจ็กต์เพื่อเปลี่ยนไปใช้หรือลงชื่อสมัครใช้แผน Flame
ฉันเปลี่ยนโครงการแผน Flame เป็นแผนการเรียกเก็บเงินอื่น ฉันจะเปลี่ยนกลับได้อย่างไร?
การเปลี่ยนไปใช้แผน Flame ไม่สามารถทำได้อีกต่อไป สำหรับการเข้าถึงบริการที่จัดทำโดยแผน Flame ตรวจสอบให้แน่ใจว่าคุณกำลังใช้แผนการจ่ายตามการใช้งานของ Blaze และพิจารณา ตั้งค่าการแจ้งเตือนงบประมาณ สำหรับโครงการของคุณ
โครงการของฉันถูกเปลี่ยนไปใช้แผนการเรียกเก็บเงินอื่นโดยอัตโนมัติซึ่งเป็นส่วนหนึ่งของการเกษียณอายุของแผน Flame ฉันควรทำอย่างไรดี?
การเปลี่ยนแปลงแผนการเรียกเก็บเงินอัตโนมัติไม่ได้เป็นส่วนหนึ่งของขอบเขตปัจจุบันสำหรับการยกเลิกแผน Flame อย่าลืมตรวจสอบบันทึกการตรวจสอบของคุณสำหรับการเปลี่ยนแปลงการเรียกเก็บเงิน
เหตุใดแผน Flame จึงถูกยกเลิก
ในช่วงหลายปีที่ผ่านมาเราพบว่าการใช้แผน Flame ลดลงและโครงการส่วนใหญ่ที่ใช้แผนดังกล่าวไม่ได้ใช้ประโยชน์อย่างเต็มที่ โดยทั่วไปการดูแลแผนการเรียกเก็บเงินนี้จะไม่คุ้มทุนและเรารู้สึกว่าสามารถให้บริการทุกคนได้ดีขึ้นหากทรัพยากรไปสู่โครงการริเริ่มอื่น ๆ ของ Firebase
การใช้งานฟรีในแผน Blaze แตกต่างจากการใช้งานฟรีในแผน Spark อย่างไร
การใช้งานฟรีในแผน Blaze จะคำนวณทุกวัน ขีด จำกัด การใช้งานยังแตกต่างจากแผน Spark สำหรับ Cloud Functions การตรวจสอบสิทธิ์ทางโทรศัพท์และ Test Lab
สำหรับ Cloud Functions การใช้งานฟรีในแผน Blaze จะคำนวณที่ระดับบัญชีสำหรับการเรียกเก็บเงินไม่ใช่ระดับโปรเจ็กต์และมีขีด จำกัด ดังต่อไปนี้:
- การเรียกใช้ 2 ล้านครั้ง / เดือน
- 400K GB- วินาที / เดือน
- 200K CPU- วินาที / เดือน
- 5 GB ของเครือข่ายขาออก / เดือน
สำหรับการตรวจสอบสิทธิ์โทรศัพท์การใช้งานฟรีในแผน Blaze จะคำนวณเป็นรายเดือน
สำหรับ Test Lab การใช้งานฟรีในแผน Blaze มีขีด จำกัด ดังต่อไปนี้:
- อุปกรณ์ทางกายภาพ 30 นาที / วัน
- อุปกรณ์เสมือน 60 นาที / วัน
โควต้าการใช้งานฟรีจะรีเซ็ตเมื่อฉันเปลี่ยนจากแผน Spark เป็น Blaze หรือไม่?
การใช้งานฟรีจากแผน Spark รวมอยู่ในแผน Blaze การใช้งานฟรีจะไม่รีเซ็ตเมื่อย้ายไปใช้แผน Blaze
"การเชื่อมต่อฐานข้อมูลพร้อมกัน" คืออะไร?
การเชื่อมต่อพร้อมกันจะเทียบเท่ากับอุปกรณ์มือถือแท็บเบราว์เซอร์หรือแอปเซิร์ฟเวอร์ที่เชื่อมต่อกับฐานข้อมูล Firebase กำหนดข้อ จำกัด อย่างหนักเกี่ยวกับจำนวนการเชื่อมต่อพร้อมกันไปยังฐานข้อมูลของแอปของคุณ ขีด จำกัด เหล่านี้มีไว้เพื่อป้องกันทั้ง Firebase และผู้ใช้ของเราจากการละเมิด
ขีด จำกัด แผน Spark คือ 100 และไม่สามารถเพิ่มได้ แผน Flame and Blaze จำกัด การเชื่อมต่อพร้อมกัน 200,000 ครั้งต่อฐานข้อมูล
ขีด จำกัด นี้ไม่เหมือนกับจำนวนผู้ใช้แอปของคุณทั้งหมดเนื่องจากผู้ใช้ของคุณไม่ได้เชื่อมต่อพร้อมกันทั้งหมด หากคุณต้องการการเชื่อมต่อพร้อมกันมากกว่า 200,000 รายการโปรดอ่าน Scale with Multiple Databases
จะเกิดอะไรขึ้นถ้าฉันใช้พื้นที่จัดเก็บข้อมูลเกินแผน Spark หรือขีด จำกัด การดาวน์โหลดสำหรับฐานข้อมูลแบบเรียลไทม์
เพื่อให้คุณได้ราคาที่คาดเดาได้ทรัพยากรที่มีให้คุณในแผน Spark จะถูก จำกัด ไว้ ซึ่งหมายความว่าเมื่อคุณใช้งานเกินขีด จำกัด ของแผนในเดือนใด ๆ แอปของคุณจะถูกปิดเพื่อป้องกันการใช้ทรัพยากรและการเรียกเก็บเงินเพิ่มเติม
จะเกิดอะไรขึ้นถ้าฉันเกินขีด จำกัด การเชื่อมต่อพร้อมกันของแผน Spark สำหรับฐานข้อมูลแบบเรียลไทม์
เมื่อแอปของคุณถึงขีด จำกัด พร้อมกันในแผน Spark การเชื่อมต่อที่ตามมาจะถูกปฏิเสธจนกว่าการเชื่อมต่อที่มีอยู่บางส่วนจะถูกปิด แอปจะทำงานต่อไปสำหรับผู้ใช้ที่เชื่อมต่ออยู่
จะเกิดอะไรขึ้นหากฉันอัปโหลดการดาวน์โหลดหรือการจัดเก็บข้อมูลเกินขีด จำกัด สำหรับ Cloud Storage
เมื่อคุณใช้งาน Cloud Storage เกินขีด จำกัด ในโปรเจ็กต์บนแผน Spark ผลลัพธ์จะขึ้นอยู่กับประเภทของขีด จำกัด ที่คุณเกิน:
- หากคุณ เก็บข้อมูล เกินขีด จำกัด GB คุณจะไม่สามารถจัดเก็บข้อมูลในโปรเจ็กต์นั้นได้อีกเว้นแต่คุณจะลบข้อมูลบางส่วนที่จัดเก็บไว้หรืออัปเกรดเป็นแผนที่มีพื้นที่จัดเก็บเพิ่มเติมหรือพื้นที่เก็บข้อมูลไม่ จำกัด
- หากคุณ ดาวน์โหลด เกินขีด จำกัด GB แอปของคุณจะไม่สามารถดาวน์โหลดข้อมูลเพิ่มเติมได้จนกว่าจะถึงวันถัดไป (เริ่มตั้งแต่เวลาเที่ยงคืนตามเวลาแปซิฟิกของสหรัฐอเมริกา) เว้นแต่คุณจะอัปเกรดเป็นแผนที่มีข้อ จำกัด น้อยกว่าหรือไม่ จำกัด จำนวน
- หากคุณ อัปโหลดหรือดาวน์โหลด เกินขีด จำกัด แอปของคุณจะไม่สามารถอัปโหลดหรือดาวน์โหลดข้อมูลเพิ่มเติมได้จนกว่าจะถึงวันถัดไป (เริ่มเวลาเที่ยงคืนตามเวลาแปซิฟิกของสหรัฐอเมริกา) เว้นแต่คุณจะอัปเกรดเป็นแผนที่มีข้อ จำกัด น้อยกว่าหรือไม่มี ขีด จำกัด
การรวม Firebase กับ Google Cloud ทำงานอย่างไร
Firebase ผสานรวมกับ Google Cloud อย่างลึกซึ้ง มีการแชร์โปรเจ็กต์ระหว่าง Firebase และ Google Cloud ดังนั้นโปรเจ็กต์จึงเปิดใช้บริการ Firebase และบริการ Google Cloud ได้ คุณสามารถเข้าถึงโปรเจ็กต์เดียวกันได้จากคอนโซล Firebase หรือ Google Cloud Console โดยเฉพาะ:
- ผลิตภัณฑ์ Firebase บางอย่างได้รับการสนับสนุนโดยตรงจาก Google Cloud เช่น Cloud Storage สำหรับ Firebase รายการผลิตภัณฑ์ที่สนับสนุนโดย Google Cloud จะยังคงเพิ่มขึ้นเรื่อย ๆ เมื่อเวลาผ่านไป
- การตั้งค่าหลายอย่างของคุณรวมถึงผู้ทำงานร่วมกันและข้อมูลการเรียกเก็บเงินจะแชร์โดย Firebase และ Google Cloud การใช้งานทั้ง Firebase และ Google Cloud ของคุณจะปรากฏในใบเรียกเก็บเงินเดียวกัน
นอกจากนี้เมื่อคุณอัปเกรดเป็นแผน Blaze คุณสามารถใช้ Infrastructure-as-a-Service และ API ระดับโลกของ Google Cloud ภายในโครงการ Firebase ได้โดยตรงใน ราคา Google Cloud มาตรฐาน คุณยังสามารถส่งออกข้อมูลจาก Google Cloud ไปยัง BigQuery เพื่อวิเคราะห์ได้โดยตรง หากต้องการเรียนรู้เพิ่มเติมโปรดดู ลิงก์ BigQuery กับ Firebase
มีประโยชน์มากมายในการเพิ่มความปลอดภัยปรับปรุงเวลาในการตอบสนองและประหยัดเวลาในการใช้ Google Cloud กับ Firebase (เทียบกับบริการคลาวด์อื่น ๆ ที่ไม่ได้อยู่ร่วมกัน) ตรวจสอบ เว็บไซต์ Google Cloud สำหรับรายละเอียดเพิ่มเติม
จะเกิดอะไรขึ้นกับโปรเจ็กต์ Firebase ของฉันหากฉันเพิ่มหรือลบบัญชีสำหรับการเรียกเก็บเงินสำหรับโปรเจ็กต์นั้นใน Google Cloud Console
หากมีการเพิ่มบัญชีสำหรับการเรียกเก็บเงินลงในโปรเจ็กต์ใน Google Cloud Console โปรเจ็กต์เดียวกันจะได้รับการอัปเกรดเป็นแผน Firebase Blaze โดยอัตโนมัติหากโปรเจ็กต์นั้นอยู่ในแผน Spark
ในทางตรงกันข้ามหากบัญชีสำหรับการเรียกเก็บเงินที่ใช้งานอยู่ถูกลบออกจากโปรเจ็กต์ใน Google Cloud Console โปรเจ็กต์นั้นจะถูกดาวน์เกรดเป็นแผน Firebase Spark
ฉันสามารถอัปเกรดดาวน์เกรดหรือยกเลิกได้ตลอดเวลาหรือไม่?
ได้คุณสามารถอัปเกรดดาวน์เกรดหรือยกเลิกได้ทุกเมื่อ โปรดทราบว่าเราไม่มีการคืนเงินตามสัดส่วนสำหรับการดาวน์เกรดหรือการยกเลิก ซึ่งหมายความว่าหากคุณปรับลดรุ่นหรือยกเลิกก่อนสิ้นสุดระยะเวลาการเรียกเก็บเงินของคุณคุณจะยังคงชำระเงินในส่วนที่เหลือของเดือน
ฉันจะได้รับการสนับสนุนประเภทใด?
แอป Firebase ทั้งหมดรวมถึงแผนบริการฟรีมาพร้อมกับการสนับสนุนทางอีเมลจากเจ้าหน้าที่ Firebase ในช่วงเวลาทำการของสหรัฐอเมริกาในแปซิฟิก บัญชีทั้งหมดรองรับปัญหาที่เกี่ยวข้องกับการเรียกเก็บเงินปัญหาเกี่ยวกับบัญชีคำถามทางเทคนิค (การแก้ปัญหา) และรายงานเหตุการณ์ได้อย่างไม่ จำกัด
ฉันสามารถ จำกัด การใช้งานในแผน Blaze ได้หรือไม่
ไม่คุณไม่สามารถ จำกัด การใช้งานแผน Blaze ได้ในขณะนี้ เรากำลังประเมินตัวเลือกสำหรับรองรับการใช้งานแผน Blaze
ผู้ใช้ Blaze สามารถกำหนดงบประมาณสำหรับโครงการหรือบัญชีของตนและรับการแจ้งเตือนเมื่อการใช้จ่ายใกล้ถึงขีด จำกัด เหล่านั้น สำหรับข้อมูลเพิ่มเติมโปรดดู ตั้งค่าการแจ้งเตือนงบประมาณ
การสำรองข้อมูลอัตโนมัติคืออะไร? คุณมีการสำรองข้อมูลรายชั่วโมงหรือไม่?
การสำรองข้อมูลอัตโนมัติ เป็นคุณลักษณะขั้นสูงสำหรับลูกค้าในแผนการเรียกเก็บเงิน Blaze ของเราที่สำรองข้อมูลฐานข้อมูลแบบเรียลไทม์ Firebase ของคุณวันละครั้งและอัปโหลดไปยัง Google Cloud Storage
เราไม่มีการสำรองข้อมูลรายชั่วโมง
คุณเสนอส่วนลดโอเพ่นซอร์สไม่แสวงหาผลกำไรหรือการศึกษาหรือไม่?
แผน Spark ของเราสามารถใช้ได้กับบุคคลหรือองค์กรทุกประเภทรวมถึงองค์กรไม่แสวงหาผลกำไรโรงเรียนและโครงการโอเพ่นซอร์ส เนื่องจากแผนเหล่านี้มีโควต้ามากมายอยู่แล้วเราจึงไม่เสนอส่วนลดพิเศษหรือแผนสำหรับโครงการโอเพนซอร์สไม่แสวงหาผลกำไรหรือการศึกษา
คุณเสนอสัญญาระดับองค์กรการกำหนดราคาการสนับสนุนหรือโฮสติ้งโครงสร้างพื้นฐานโดยเฉพาะหรือไม่?
แผน Blaze ของเราเหมาะสำหรับองค์กรทุกขนาดและ SLA ของเราตรงตามหรือสูงกว่ามาตรฐานอุตสาหกรรมสำหรับโครงสร้างพื้นฐานระบบคลาวด์ อย่างไรก็ตามขณะนี้เราไม่ได้เสนอสัญญาระดับองค์กรการกำหนดราคาหรือการสนับสนุนและเราไม่ได้ให้บริการโฮสติ้งโครงสร้างพื้นฐานโดยเฉพาะ (นั่นคือการติดตั้งในองค์กร) สำหรับบริการต่างๆเช่นฐานข้อมูลเรียลไทม์ของเรา เรากำลังทำงานอย่างหนักเพื่อเพิ่มคุณสมบัติบางอย่างเหล่านี้
คุณเสนอราคาเฉพาะกิจหรือไม่? ฉันต้องการจ่ายตามการใช้งานสำหรับคุณสมบัติหนึ่งหรือสองอย่างเท่านั้น
เราเสนอราคาเฉพาะกิจในแผน Blaze ซึ่งคุณจะจ่ายเฉพาะฟีเจอร์ที่คุณใช้เท่านั้น
แผน Firebase แบบชำระเงินทำงานกับโฆษณาอย่างไร มีเครดิตโฆษณาฟรีพร้อมแผนการชำระเงินหรือไม่?
แผนการกำหนดราคา Firebase แยกจากโฆษณาดังนั้นจึงไม่มีเครดิตโฆษณาฟรี ในฐานะนักพัฒนา Firebase คุณสามารถ "เชื่อมโยง" บัญชีโฆษณาของคุณกับ Firebase เพื่อรองรับเครื่องมือวัด Conversion
แคมเปญโฆษณาทั้งหมดได้รับการจัดการโดยตรงในโฆษณาและการเรียกเก็บเงินโฆษณาจะได้รับการจัดการจากคอนโซลโฆษณา
ราคา Cloud Functions
เหตุใดฉันจึงต้องมีบัญชีสำหรับการเรียกเก็บเงินเพื่อใช้ Cloud Functions สำหรับ Firebase
Cloud Functions สำหรับ Firebase อาศัยบริการบางอย่างของ Google: Cloud Build , Container Registry และ Cloud Storage การใช้บริการเหล่านี้จะถูกเรียกเก็บเงินเพิ่มเติมจากราคาที่มีอยู่
คุณจะถูกเรียกเก็บเงินเฉพาะเวลาในการคำนวณที่จำเป็นในการสร้างคอนเทนเนอร์รันไทม์ของฟังก์ชัน
Cloud Storage ซึ่งทำงานร่วมกับ Google Container Registry จะให้พื้นที่เก็บข้อมูลสำหรับคอนเทนเนอร์ที่ฟังก์ชันทำงาน คุณจะถูกเรียกเก็บเงินสำหรับแต่ละคอนเทนเนอร์ที่จำเป็นในการปรับใช้ฟังก์ชัน คุณอาจสังเกตเห็นการเรียกเก็บเงินเล็กน้อยสำหรับแต่ละคอนเทนเนอร์ที่จัดเก็บตัวอย่างเช่นพื้นที่เก็บข้อมูล 1GB จะถูก เรียกเก็บเงิน 0.026 ดอลลาร์ต่อเดือน
หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงการเรียกเก็บเงินของคุณโปรดตรวจสอบสิ่งต่อไปนี้
- ราคา Cloud Functions : ระดับฟรีที่มีอยู่จะไม่เปลี่ยนแปลง
- ราคา Cloud Build: Cloud Build มีระดับฟรี
- ราคา Container Registry
Cloud Functions สำหรับ Firebase ยังมีการใช้งานฟรีอยู่ไหม
ใช่. ในแผน Blaze Cloud Functions มีระดับฟรีตลอดเวลาสำหรับการเรียกใช้เวลาในการประมวลผลและปริมาณการใช้อินเทอร์เน็ต การเรียกใช้ 2,000,000 ครั้งแรก, 400,000 GB-วินาที, 200,000 CPU-วินาทีและการรับส่งข้อมูลทางอินเทอร์เน็ต 5 GB ฟรีในแต่ละเดือน คุณจะถูกเรียกเก็บเงินสำหรับการใช้งานที่สูงกว่าเกณฑ์เหล่านั้นเท่านั้น
การดำเนินการปรับใช้แต่ละครั้งจะมีค่าใช้จ่ายเล็กน้อยสำหรับพื้นที่จัดเก็บที่ใช้สำหรับคอนเทนเนอร์ของฟังก์ชัน ตัวอย่างเช่นหากฟังก์ชันของคุณใช้พื้นที่เก็บข้อมูล 1GB ผ่าน Container Registry คุณจะถูก เรียกเก็บเงิน 0.026 ดอลลาร์ต่อเดือน หากกระบวนการพัฒนาของคุณขึ้นอยู่กับการปรับใช้ฟังก์ชันสำหรับการทดสอบคุณสามารถลดค่าใช้จ่ายเพิ่มเติมได้โดยใช้ Firebase Local Emulator Suite ระหว่างการพัฒนา
ดู แผนการกำหนดราคาของ Firebase และตัวอย่างสถานการณ์การ กำหนดราคาของฟังก์ชันระบบคลาวด์
Firebase กำลังวางแผนที่จะเพิ่มโควต้าและขีด จำกัด สำหรับ Cloud Functions สำหรับ Firebase หรือไม่
ไม่ได้ไม่มีแผนจะเปลี่ยนโควต้ายกเว้นการลบขีด จำกัด เวลาการสร้างสูงสุด แทนที่จะได้รับข้อผิดพลาดหรือคำเตือนเมื่อถึงโควต้าการสร้างรายวัน 120 นาทีคุณจะถูกเรียกเก็บเงินภายใต้เงื่อนไขของแผนการจ่ายตามการใช้งานของ Blaze ดู โควต้าและขีด จำกัด
ฉันจะรับเครดิต Google Cloud $ 300 ได้ไหม
ได้คุณสามารถสร้างบัญชีสำหรับการเรียกเก็บเงินใน Google Cloud Console เพื่อรับเครดิต $ 300 จากนั้นเชื่อมโยงบัญชีสำหรับการเรียกเก็บเงินนั้นกับโครงการ Firebase
เพิ่มเติมเกี่ยวกับเครดิต Google Cloud ที่นี่
โปรดทราบว่าหากคุณทำเช่นนี้คุณจะต้อง ตั้งค่า แผนการเรียกเก็บเงินแบบจ่ายตามการใช้งานของ Blaze ในคอนโซล Firebase เพื่อให้โครงการของคุณทำงานต่อไปได้หลังจากที่เครดิต $ 300 หมดลง
ฉันต้องการติดตาม codelab เพื่อเรียนรู้เกี่ยวกับ Firebase คุณสามารถให้บัญชีสำหรับการเรียกเก็บเงินชั่วคราวได้หรือไม่?
ไม่ล่ะขอบคุณ. คุณสามารถใช้ โปรแกรมจำลอง Firebase เพื่อการพัฒนาโดยไม่ต้องมีบัญชีสำหรับการเรียกเก็บเงิน หรือลองสมัครทดลองใช้ Google Cloud ฟรี หากคุณยังคงประสบปัญหาในการชำระเงินเนื่องจากการเปลี่ยนแปลงนี้โปรดติดต่อฝ่ายสนับสนุนของ Firebase
ฉันกังวลว่าฉันจะเรียกเก็บเงินมหาศาล
คุณสามารถตั้งค่าการ แจ้งเตือนงบประมาณ ใน Google Cloud Console เพื่อช่วยควบคุมค่าใช้จ่าย หากต้องการทราบแนวคิดในการคิดต้นทุนสำหรับสถานการณ์ทั่วไปโปรดดูตัวอย่าง ราคา ของ ฟังก์ชันระบบคลาวด์
ฉันจะตรวจสอบการเรียกเก็บเงินปัจจุบันของฉันได้อย่างไร
ดูแดชบอร์ด การใช้งานและการเรียกเก็บเงิน ในคอนโซล Firebase
ฉันใช้ Firebase Extensions ฉันจะได้รับผลกระทบจากการเปลี่ยนแปลงนี้หรือไม่?
ใช่. เนื่องจาก ส่วนขยายใช้ Cloud Functions ส่วนขยายที่ใช้ Node.js 10 หรือใหม่กว่าจะถูกเรียกเก็บเงินเช่นเดียวกับฟังก์ชันอื่น ๆ
หากต้องการใช้ส่วนขยายที่ใช้ Node.js 10 ขึ้นไปคุณจะต้องอัปเกรดเป็นแผนการเรียกเก็บเงินแบบจ่ายตามการใช้งานของ Blaze คุณจะถูกเรียกเก็บเงินเล็กน้อย (โดยทั่วไป ประมาณ $ 0.01 ต่อเดือน ) สำหรับทรัพยากร Firebase ที่จำเป็นสำหรับแต่ละส่วนขยายที่คุณติดตั้ง (แม้ว่าจะไม่ได้ใช้งานก็ตาม) นอกเหนือจากค่าใช้จ่ายที่เกี่ยวข้องกับการใช้บริการ Firebase
ความเป็นส่วนตัว
ฉันจะหาข้อมูลเกี่ยวกับความเป็นส่วนตัวและความปลอดภัยใน Firebase ได้ที่ไหน
Firebase SDK บันทึกข้อมูลการใช้งาน / การวินิจฉัยใด ๆ นอก Analytics หรือไม่
ใช่. ขณะนี้เป็น iOS เท่านั้น แต่อาจมีการเปลี่ยนแปลงในอนาคต Firebase iOS SDK มีเฟรมเวิร์ก FirebaseCoreDiagnostics
โดยค่าเริ่มต้น Firebase ใช้เฟรมเวิร์กนี้เพื่อรวบรวมข้อมูลการใช้งาน SDK และการวินิจฉัยเพื่อช่วยจัดลำดับความสำคัญของการปรับปรุงผลิตภัณฑ์ในอนาคต FirebaseCoreDiagnostics
เป็นทางเลือกดังนั้นหากคุณต้องการเลือกที่จะไม่ส่งบันทึกการวินิจฉัยของ Firebase คุณสามารถทำได้โดยยกเลิกการเชื่อมโยงไลบรารีจากแอปพลิเคชันของคุณ คุณสามารถเรียกดูแหล่งที่มาแบบเต็มรวมถึงค่าที่บันทึกไว้บน GitHub
การทดสอบ A / B
การทดสอบ A / B: ฉันสามารถสร้างและเรียกใช้ การทดสอบได้ กี่รายการ
คุณได้รับอนุญาตให้ทำการทดสอบได้สูงสุด 300 ครั้งต่อโปรเจ็กต์ซึ่งอาจประกอบด้วยการทดสอบที่ทำงานอยู่ได้ถึง 24 ครั้งโดยส่วนที่เหลือเป็นแบบร่างหรือเสร็จสิ้น
AdMob
AdMob: ฉันจะเชื่อมโยงแอป Windows กับ Firebase ได้หรือไม่
ขณะนี้ยังไม่รองรับแอป Windows ในคอนโซล Firebase
AdMob: เหตุใดฉันจึงไม่สามารถเชื่อมโยงบัญชี AdMob ของฉันจากคอนโซล Firebase
คุณสามารถเชื่อมโยงแอป AdMob กับแอป Firebase ผ่านคอนโซล AdMob ในการเชื่อมโยงบัญชีคุณต้องเป็นทั้งเจ้าของโครงการ Firebase และผู้ดูแลระบบ AdMob
AdMob: ผู้ใช้หลายคนสามารถเชื่อมโยงบัญชี AdMob กับแอป Firebase ได้หรือไม่
ไม่บัญชี AdMob ทุกบัญชีจะมีผู้ใช้หลักเพียงคนเดียว ผู้ใช้หลักคือผู้ใช้รายแรกที่ยอมรับ ข้อกำหนดในการให้บริการของ Firebase
การวิเคราะห์
Analytics: เหตุใด Google Analytics จึงเป็นส่วนที่แนะนำในการใช้ผลิตภัณฑ์ Firebase
Google Analytics เป็นโซลูชันการวิเคราะห์ที่ฟรีและไม่ จำกัด ซึ่งทำงานร่วมกับฟีเจอร์ Firebase เพื่อมอบข้อมูลเชิงลึกที่มีประสิทธิภาพ ช่วยให้คุณสามารถดูบันทึกเหตุการณ์ใน Crashlytics ประสิทธิภาพการแจ้งเตือนใน FCM ประสิทธิภาพของ Deep Link สำหรับ Dynamic Links และข้อมูลการซื้อในแอปจาก Google Play เพิ่มประสิทธิภาพการกำหนดเป้าหมายผู้ชมขั้นสูงในการกำหนดค่าระยะไกลการคาดการณ์และอื่น ๆ
Google Analytics ทำหน้าที่เป็นหน่วยสืบราชการลับในคอนโซล Firebase เพื่อให้คุณได้รับข้อมูลเชิงลึกที่นำไปใช้ได้จริงมากขึ้นเกี่ยวกับวิธีพัฒนาแอปคุณภาพสูงขยายฐานผู้ใช้และสร้างรายได้มากขึ้น
ในการเริ่มต้น อ่านเอกสาร
การวิเคราะห์: ฉันจะแบ่งกลุ่มผู้ใช้ที่มีคุณสมบัติ ไม่ ตรงตามเกณฑ์ได้อย่างไร
คุณสามารถแก้ไขปัญหาใหม่ได้โดย "กำหนดเป้าหมายเชิงลบ" ผู้ใช้เหล่านี้ ยกตัวอย่างเช่นวางใหม่ปัญหาเป็น "ไม่แสดงโฆษณาให้กับผู้ที่ได้ซื้ออะไร" และรูปแบบ ที่ผู้ชม ของผู้ใช้เหล่านั้นไปยังเป้าหมาย
การวิเคราะห์: ฉันจะควบคุมวิธีแชร์ข้อมูล Analytics กับ Firebase ส่วนที่เหลือได้อย่างไร
โดยค่าเริ่มต้นข้อมูล Google Analytics ของคุณจะใช้เพื่อปรับปรุงฟีเจอร์อื่น ๆ ของ Firebase และ Google คุณสามารถควบคุมวิธีแชร์ข้อมูล Google Analytics ในการตั้งค่าโปรเจ็กต์ได้ทุกเมื่อ เรียนรู้เพิ่มเติมเกี่ยวกับ การตั้งค่าการแบ่งปันข้อมูล
Analytics: บัญชี Google Analytics ใหม่ที่อัปเกรดแล้วคืออะไร
คุณสามารถอ่านเพิ่มเติมเกี่ยวกับการอัปเกรด Google Analytics ใหม่ได้ใน บล็อกโพสต์ ของเรา
Analytics: How do I know if I'm using Google Analytics for Firebase or a fully upgraded Google Analytics account?
If you see a link to "View your data in Google Analytics" from the analytics dashboard in the Firebase console, then your project is using a fully upgraded Google Analytics account.
You can also check by viewing the Google Analytics card in the Firebase console (you can access this from settings > Project Settings > Integrations , then click Manage ). If you see a Linked Google Analytics account listed in the Your Google Analytics property section, your project is using the full Google Analytics experience in Firebase. If you do not see a Linked Google Analytics account , your project is using Google Analytics for Firebase.
Analytics: What will happen to my data when I upgrade to the new Google Analytics for Firebase?
This will not affect your existing Firebase project analytics data in the Firebase console.
You will be able to continue using the same dashboard and workflows you are using today, and you will also have access to some advanced features in Google Analytics.
Note that if you decide to enable cross-device reporting after making the upgrade, your data will be de-duplicated using the UserID. This may decrease some user counts in the Firebase console.
Analytics: What is Firebase User Segmentation Storage?
Firebase User Segmentation Storage stores audience lists you've created to provide targeting information to other Firebase services that use them, such as Crashlytics, FCM, Predictions, and more.
Analytics: Why don't I see any data after unlinking my app from Google Analytics?
Your analytics data resides within the Google Analytics property - not within the Firebase project. If you delete or unlink the property, then your data is unlinked from your project as well. The data still resides in that property, however, and you can always relink it to your project.
Creating a new Google Analytics account (and new property) will result in having a blank analytics dashboard in the Firebase console.
Analytics: Why do I get an error when trying to upgrade my project to the new Google Analytics experience?
If you are experiencing and error when upgrading, such as:
The operation has failed (Reason: Requested entity already exists)
or
The operation has failed (Reason: Precondition check failed)
This means that there is an association between your project and an already existing Google Analytics property. You can unlink the property, delete it, or upgrade through the Google Analytics interface.
If this is still an issue, you can use the REST API to unlink by using the removeAnalytics
method , then use the addGoogleAnalytics
method to link a new property.
You can then move the data from one property to another .
Analytics: Will audiences and/or events defined in Google Analytics be available on the Firebase console?
Your audiences and user properties will be synced. For some features, you'll need to use the Google Analytics interface, such as segmentation and closed funnels. You can access the Google Analytics interface directly via deep-links from the Firebase console. Any changes you make from the Firebase console can also be performed in Google Analytics, and those changes will be reflected in Firebase.
App Indexing
App Indexing: Can Google Search index multiple languages for a single app?
Google Search supports the following multi-language cases:
- The associated website has unique URLs for each language, and there is one corresponding app HTTP URL for each web URL.
- The associated website has unique URLs for each language, but there is only one app HTTP URL. The app uses system language settings to display the correct language content.
- The associated website has one URL for all languages (or it supports only one language), and there is one corresponding app URL. The website and the application must display the content in the same language when the user has set no preference.
App Indexing: Can App Indexing support multiple websites for an app?
Yes. Make sure that each associated website is verified for the Android app via the Google Play Console . Learn how to verify your app .
App Indexing: Do sitemaps need to be added via the Search Console?
iOS does not require sitemaps, and Android does not require them as long as your app supports HTTP URLs. For custom URLs, you do not need to add sitemaps via Search Console. You can reference sitemaps in your robots.txt
file and Google Search will use them. Learn more about managing sitemaps . However, submitting a sitemap through Search Console lets you see statistics on submitted and indexed HTTP URLs in Search Console.
Authentication
Firebase Authentication: Which countries are supported for phone authentication?
Firebase Authentication supports phone number verification across the the world, but not all networks reliably deliver our verification messages. The following countries have good rates of delivery, and should be expected to work well for phone number sign in.
Country | Code |
---|---|
AD | Andorra |
AE | United Arab Emirates |
AF | Afghanistan |
AG | Antigua and Barbuda |
AL | Albania |
AM | Armenia |
AO | Angola |
AR | Argentina |
AS | American Samoa |
AT | Austria |
AU | Australia |
AW | Aruba |
AZ | Azerbaijan |
BA | Bosnia and Herzegovina |
BB | Barbados |
BD | Bangladesh |
BE | Belgium |
BF | Burkina Faso |
BG | Bulgaria |
BJ | Benin |
BM | Bermuda |
BN | Brunei Darussalam |
BO | Bolivia |
BR | Brazil |
BS | Bahamas |
BT | Bhutan |
BW | Botswana |
BY | Belarus |
BZ | Belize |
CA | Canada |
CD | Congo, (Kinshasa) |
CF | Central African Republic |
CG | Congo (Brazzaville) |
CH | Switzerland |
CI | Côte d'Ivoire |
CK | Cook Islands |
CL | Chile |
CM | Cameroon |
CO | Colombia |
CR | Costa Rica |
CV | Cape Verde |
CW | Curaçao |
CY | Cyprus |
CZ | Czech Republic |
DE | Germany |
DJ | Djibouti |
DK | Denmark |
DM | Dominica |
DO | Dominican Republic |
DZ | Algeria |
EC | Ecuador |
EG | Egypt |
ES | Spain |
ET | Ethiopia |
FI | Finland |
FJ | Fiji |
FK | Falkland Islands (Malvinas) |
FM | Micronesia, Federated States of |
FO | Faroe Islands |
FR | France |
GA | Gabon |
GB | United Kingdom |
GD | Grenada |
GE | Georgia |
GF | French Guiana |
GG | Guernsey |
GH | Ghana |
GI | Gibraltar |
GL | Greenland |
GM | Gambia |
GP | Guadeloupe |
GQ | Equatorial Guinea |
GR | Greece |
GT | Guatemala |
GY | Guyana |
HK | Hong Kong, SAR China |
HN | Honduras |
HR | Croatia |
HT | Haiti |
HU | Hungary |
ID | Indonesia |
IE | Ireland |
IL | Israel |
IM | Isle of Man |
IN | India |
IQ | Iraq |
IT | Italy |
JE | Jersey |
JM | Jamaica |
JO | Jordan |
JP | Japan |
KE | Kenya |
KG | Kyrgyzstan |
KH | Cambodia |
KM | Comoros |
KN | Saint Kitts and Nevis |
KR | Korea (South) |
KW | Kuwait |
KY | Cayman Islands |
KZ | Kazakhstan |
LA | Lao PDR |
LB | Lebanon |
LC | Saint Lucia |
LI | Liechtenstein |
LK | Sri Lanka |
LS | Lesotho |
LT | Lithuania |
LU | Luxembourg |
LV | Latvia |
LY | Libya |
MA | Morocco |
MD | Moldova |
ME | Montenegro |
MF | Saint-Martin (French part) |
MG | Madagascar |
MK | Macedonia, Republic of |
MM | Myanmar |
MN | Mongolia |
MO | Macao, SAR China |
MS | Montserrat |
MT | Malta |
MU | Mauritius |
MW | Malawi |
MX | Mexico |
MY | Malaysia |
MZ | Mozambique |
NA | Namibia |
NC | New Caledonia |
NE | Niger |
NF | Norfolk Island |
NG | Nigeria |
NI | Nicaragua |
NL | Netherlands |
NO | Norway |
NP | Nepal |
NZ | New Zealand |
OM | Oman |
PA | Panama |
PE | Peru |
PG | Papua New Guinea |
PH | Philippines |
PK | Pakistan |
PL | Poland |
PM | Saint Pierre and Miquelon |
PR | Puerto Rico |
PS | Palestinian Territory |
PT | Portugal |
PY | Paraguay |
QA | Qatar |
RE | Réunion |
RO | Romania |
RS | Serbia |
RU | Russian Federation |
RW | Rwanda |
SA | Saudi Arabia |
SC | Seychelles |
SE | Sweden |
SG | Singapore |
SH | Saint Helena |
SI | Slovenia |
SK | Slovakia |
SL | Sierra Leone |
SN | Senegal |
SR | Suriname |
ST | Sao Tome and Principe |
SV | El Salvador |
SZ | Swaziland |
TC | Turks and Caicos Islands |
TG | Togo |
TH | Thailand |
TL | Timor-Leste |
TM | Turkmenistan |
TO | Tonga |
TR | Turkey |
TT | Trinidad and Tobago |
TW | Taiwan, Republic of China |
TZ | Tanzania, United Republic of |
UA | Ukraine |
UG | Uganda |
US | United States of America |
UY | Uruguay |
UZ | Uzbekistan |
VC | Saint Vincent and Grenadines |
VE | Venezuela (Bolivarian Republic) |
VG | British Virgin Islands |
VI | Virgin Islands, US |
VN | Viet Nam |
WS | Samoa |
YE | Yemen |
YT | Mayotte |
ZA | South Africa |
ZM | Zambia |
ZW | Zimbabwe |
Cloud Functions
Cloud Functions runtime support
Why is the Node.js 8 runtime deprecated?
On Dec 31, 2019, Node.js 8 was marked end-of-life by the Node.js Foundation . At that time, the Node.js Foundation stopped issuing security releases for Node.js 8. Because of this, we recommend that you update to Node.js 10 or later as soon as you can.
What happens if a Node.js 8 function is left running after the removal of Node.js 8 support? Will it work indefinitely?
No it will not. Deployment of functions to the Node.js 8 runtime was disabled in the Firebase CLI on December 15, 2020. Execution of already-deployed functions will stop at some point in the future; if you have deployed functions to the Node.js 8 runtime, we recommend that you upgrade to the Node.js 12 runtime .
How do I upgrade to Node.js 12?
- Make sure you're on the Blaze pay-as-you-go billing plan .
- Make sure you are using Firebase CLI version 8.1.0 or later.
- Change the
engines
field in your functions'package.json
. - Optionally, test your changes using the Firebase emulator .
- Redeploy functions using the Firebase CLI v8.1.0 or later.
How can I make sure I deployed my functions to the Node.js 12 runtime?
In the Firebase console, go to the functions dashboard and check the runtime column.
I use Firebase Extensions. Will I be affected by this change?
Yes. Since extensions use Cloud Functions , the runtime of your extensions will need to be updated on the same timeline as Cloud Functions.
We recommend that you upgrade your Firebase project to the Blaze plan and update to the latest version of each extension installed in your project. You can upgrade your projects' extensions on the Firebase console or CLI .
Cloud Messaging
Cloud Messaging: What's the difference between the Notifications composer and Cloud Messaging?
Firebase Cloud Messaging provides a complete set of messaging capabilities through its client SDKs and HTTP and XMPP server protocols. For deployments with more complex messaging requirements, FCM is the right choice.
The Notifications composer is a lightweight, serverless messaging solution built on Firebase Cloud Messaging. With a user-friendly graphical console and reduced coding requirements, the Notifications composer lets users easily send messages to reengage and retain users, foster app growth, and support marketing campaigns.
Capabilities | Notifications composer | Cloud Messaging | |
---|---|---|---|
Target | Single device | ||
Clients subscribed to topics (ie weather) | |||
Clients in predefined user segment (app, version, language) | |||
Clients in specified analytics audiences | |||
Clients in device groups | |||
Upstream from client to server | |||
Message Type | Notifications up to 2kb | ||
Data messages up to 4kb | |||
Delivery | Immediate | ||
Future client device local time | |||
Analytics | Built-in Notifications analytics collection and funnel analytics |
Cloud Messaging: Apple announced they're decprecating the legacy binary protocol for APNs. Do I need to do anything?
No. Firebase Cloud Messaging swtiched to the HTTP/2-based APNs protocol in 2017. If you are using FCM to send notifications to iOS devices, there should be no action required on your part.
Cloud Messaging: Do I need to use other Firebase services in order to use FCM?
You can use Firebase Cloud Messaging as a standalone component, in the same manner as you did with GCM, without using other Firebase services.
Cloud Messaging: I am an existing Google Cloud Messaging (GCM) developer. Should I move to Firebase Cloud Messaging?
FCM is the new version of GCM under the Firebase brand. It inherits GCM's core infrastructure, with new SDKs to make Cloud Messaging development easier.
Benefits of upgrading to FCM SDK include:
- Simpler client development. You no longer have to write your own registration or subscription retry logic.
- An out-of-the-box notification solution. You can use the Notifications composer, a serverless notifications solution with a web console that lets anyone send notifications to target specific audiences based on insights from Google Analytics for Firebase.
To upgrade from GCM SDKs to FCM SDKs, see the guides for migrating Android and iOS apps.
Cloud Messaging: Why do my targeted devices apparently fail to receive messages?
When it looks like devices haven't successfully received messages, check first for these two potential causes:
Foreground message handling for notification messages . Client apps need to add message handling logic to handle notification messages when the app is in the foreground on the device. See the details for iOS and Android .
Network firewall restrictions . If your organization has a firewall that restricts the traffic to or from the Internet, you need to configure it to allow connectivity with FCM in order for your Firebase Cloud Messaging client apps to receive messages. The ports to open are:
- 5228
- 5229
- 5230
FCM usually uses 5228, but it sometimes uses 5229 and 5230. FCM does not provide specific IPs, so you should allow your firewall to accept outgoing connections to all IP addresses contained in the IP blocks listed in Google's ASN of 15169 .
Cloud Messaging: I have implemented onMessageReceived
in my Android app, but it is not being called.
When your app is in the background, notification messages are displayed in the system tray, and onMessageReceived
is not called. For notification messages with a data payload, the notification message is displayed in the system tray, and the data that was included with the notification message can be retrieved from the intent launched when the user taps on the notification.
For more information, see Receive and handle messages .
Notifications composer: What's the difference between the Notifications composer and Cloud Messaging?
The Notifications composer is a lightweight, serverless messaging solution built on Firebase Cloud Messaging. With a user-friendly graphical console and reduced coding requirements, the Notifications composer lets users easily send messages to reengage and retain users, foster app growth, and support marketing campaigns.
Firebase Cloud Messaging provides a complete set of messaging capabilities through its client SDKs and HTTP and XMPP server protocols. For deployments with more complex messaging requirements, FCM is the right choice.
Here's a comparison of the messaging capabilities provided by Firebase Cloud Messaging and the Notifications composer:
Capabilities | Notifications composer | Cloud Messaging | |
---|---|---|---|
Target | Single device | ||
Clients subscribed to topics (ie weather) | |||
Clients in predefined user segment (app, version, language) | |||
Clients in specified analytics audiences | |||
Clients in device groups | |||
Upstream from client to server | |||
Message Type | Notifications up to 2kb | ||
Data messages up to 4kb | |||
Delivery | Immediate | ||
Future client device local time | |||
Analytics | Built-in Notifications analytics collection and funnel analytics |
Notifications composer: I am an existing Google Cloud Messaging (GCM) developer, and I want to use the Notifications composer. What should I do?
The Notifications composer is an out-of-the-box solution that lets anyone send notifications to target specific audiences based on insights from Google Analytics for Firebase. Also, the Notifications composer provides funnel analysis for every message, allowing easy evaluation of notification effectiveness.
If you are an existing GCM developer, to use the Notifications composer you have to upgrade from GCM SDKs to FCM SDKs. See the guides for migrating Android and iOS apps.
Cloud Storage
Cloud Storage: Why can't I use Cloud Storage?
Cloud Storage for Firebase creates a default bucket in the App Engine free tier. This allows you to quickly get up and running with Firebase and Cloud Storage for Firebase, without having to put in a credit card or enable a billing account. It also allows you to easily share data between Firebase and a Google Cloud project.
There are, however, two known cases where this bucket cannot be created and you will be unable to use Cloud Storage for Firebase:
- A project imported from Google Cloud which had a App Engine Master/Slave Datastore application.
- A project imported from Google Cloud which has domain prefixed projects. For example:
domain.com:project-1234
.
There are currently no workarounds to these issues, and we recommend that you create a new project in the Firebase console and enable Cloud Storage for Firebase in that project.
Cloud Storage: Why do I see new service account IDs associated with my Firebase projects that use Cloud Storage?
Firebase uses service accounts to operate and manage services without sharing user credentials. When you create a Firebase project, you might notice that a number of service accounts are already available in your project.
If you used Cloud Storage before September 15, 2020, you may see the following legacy service account that is used to manage your bucket: firebase-storage@system.gserviceaccount.com
.
After September 15, 2020, Cloud Storage for Firebase buckets may include an additional new service account: service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
You can view all service accounts associated with your project in the Firebase console, on the Service accounts tab .
Removing the new service account
We strongly discourage you from removing the new service account because if you do so, you will not be able to take advantage of upcoming security improvements.
However, if you prefer, you can disable the API or remove access from the new service account. Removing this account may block access to your Cloud Storage bucket from your apps.
Adding the new service account
If you removed the new service account or disabled the API and want to add them back, follow the instructions provided in Creating and managing service accounts for using the Google Cloud Console to add service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com
to the set of service accounts for your project.
Crashlytics
Visit the Crashlytics troubleshooting & FAQ page for helpful tips and answers to more FAQs.
Crash Reporting: Why are there fewer crash reports in Analytics than Crash Reporting?
Crash Reporting creates a separate background process to upload crash info. If your app extends the Android Application class, you must ensure it is multi-process safe. Otherwise, it may cause concurrency issues. When an app extends an Application object, this object gets instantiated for each process in a multi-process app. Consider the following when adding Crash Reporting to your app:
- If the implementation of this object accesses any out-of-process state (a database, the file system, shared preferences, etc), or performs other actions not safe for a multi-process environment, concurrency issues might arise. This is because multiple instances of the Application object may run simultaneously.
- Many third-party libraries keep out-of-process state (eg in a local database) and are subject to the same concurrency issues if they are initialized from the Application object. If your app fits this description and you plan to use Crash Reporting in your app, we strongly encourage you to consider moving the Application logic to Content Providers, or to Android Activities. Any Application logic that is not safe for a multi-process environment can have unintended effects on your app.
Crash Reporting automatically exports captured errors to Google Analytics as app_exception events. Currently on Android, you may see a significant discrepancy between the number of Crash Reporting errors and Analytics app_exception events.
Dynamic Links
Dynamic Links: Why does my Android app access each Dynamic Link twice?
The getInvitation
API clears the saved Dynamic Link to prevent it from being accessed twice. Be sure to call this API with the autoLaunchDeepLink
parameter set to false
in each of the deep link activities to clear it for the case when the activity is triggered outside the main activity.
Hosting
Hosting: Why does my Hosting release history table in the Firebase console show file counts that are more than what my local project actually has?
Firebase automatically adds extra files containing metadata about the Hosting site, and these files are included in the total file count for the release.
Hosting: What's the largest file size that I can deploy to Firebase Hosting?
Hosting has a maximum size limit of 2 GB for individual files.
We recommend storing larger files using Cloud Storage , which offers a maximum size limit in the terabyte range for individual objects.
Performance Monitoring
Visit the Performance Monitoring troubleshooting & FAQ page for helpful tips and answers to more FAQs.
Performance Monitoring: How many custom URL patterns can I create?
You can create up to 400 total custom URL patterns per app and up to 100 custom URL patterns per domain for that app.
Predictions
Predictions: I just added Google Analytics to my app. When should I expect to see predictions in the console?
Predictions are based on your users' behavior, and the more history that's available, the better. At a bare minimum, Firebase Predictions needs two weeks of data: one week of activity to train on, and then one week to see what that activity led to (churning, spending, etc.). Beyond the first two weeks, the quality of the predictions will typically increase as Predictions observes longer sequences of user activity.
Predictions: How long does it take for predictions to be made about a new user?
For an app that is already instrumented with Google Analytics and trained with baseline data, predictions can be made for new users as early as the next day after they start using the app.
Realtime Database
Realtime Database: Why was my Realtime Database reported bandwidth lower than average between September 2016 and March 2017?
For our bandwidth calculations, we normally include SSL encryption overhead (based on layer 5 of the OSI model). However, in September 2016, we introduced a bug that caused our bandwidth reporting to ignore encryption overhead. This might have resulted in artificially low reported bandwidth and bills on your account for a few months.
We released a fix for the bug in late March 2017, returning bandwidth reporting and billing to their normal levels.
Realtime Database: What are the scaling limitations of the Realtime Database?
Each Realtime Database instance has limits on the number of write operations per second. For small writes, this limit is approximately 1000 write operations per second. If you are approaching this limit, batching operations using multi-path updates can help you achieve higher throughput.
In addition, each database instance has a cap on the number of simultaneous database connections . Our default limits are large enough for most applications. If you are building an app that requires additional scale, you may need to shard your application across multiple database instances for added scale. You may also consider Cloud Firestore as an alternative database.
Realtime Database: What can I do if I'm over my Realtime Database usage limits?
If you've received an email alert or notification in the Firebase console that you've exceeded your Realtime Database usage limits, you can address it based on the usage limit you've exceeded. To see your Realtime Database usage, go to the Realtime Database usage page of the Firebase console.
If you're over your download limit, you can upgrade your Firebase billing plan or wait until your download limit resets at the start of your next billing cycle. To decrease your downloads, try the following steps:
- Add queries to limit the data that your listen operations return.
- Check for unindexed queries.
- Use listeners that only download updates to data — for example,
on()
instead ofonce()
. - Use security rules to block unauthorized downloads.
If you're over your storage limit, upgrade your billing plan to avoid service disruptions. To reduce the amount of data in your database, try the following steps:
- Run periodic cleanup jobs.
- Reduce any duplicate data in your database.
Note that it may take some time to see any data deletions reflected in your storage allotment.
If you're over your simultaneous database connections limit, upgrade your plan to avoid any service disruptions. To manage simultaneous connections to your database, try connecting via users via the REST API if they don't require a realtime connection.
Remote Config
Remote Config: Why don't fetched values change the behavior and appearance of my app?
Unless you fetch values with fetchAndActivate()
, values are stored locally but not activated. To activate fetched values so that they can take effect, call activate
. This design lets you control when the behavior and appearance of your app changes, because you can choose when to call activate
. After you call activate
, your app source code determines when updated parameter values are used.
For example, you could fetch values and then activate them the next time a user starts your app, which removes the need to delay app startup while your app waits for fetched values from the service. Changes to your app's behavior and appearance then occur when your app uses the updated parameter values.
To learn more about the Remote Config API and usage model, see Remote Config API Overview .
Remote Config: I am making a lot of fetch requests while developing my app. Why doesn't my app always get the latest values from the service when it sends fetch requests?
During app development, you might want to fetch and activate configs very frequently (many times per hour) to let you rapidly iterate as you develop and test your app. To accommodate rapid iteration on a project with up to 10 developers, you can temporarily set a FirebaseRemoteConfigSettings
object with a low minimum fetch interval ( setMinimumFetchIntervalInSeconds
) in your app.
Remote Config: How quickly does the Remote Config service return fetched values after my app sends a fetch request?
Devices usually receive fetched values in less than a second, and often receive fetched values in milliseconds. The Remote Config service handles fetch requests within milliseconds, but the time required to complete a fetch request will depend on the network speed of the device and the latency of the network connection used by the device.
If your goal is to make fetched values take effect in your app as soon as possible, but without creating a jarring user experience, consider adding calls to fetchAndActivate
each time that your app does a full screen refresh.
Test Lab
Visit the Test Lab troubleshooting page for helpful tips and answers to FAQs.