Catch up on highlights from Firebase at Google I/O 2023. Learn more

เรียนรู้เพิ่มเติมเกี่ยวกับ Android และ Firebase

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

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

ปลั๊กอินผู้ช่วย Firebase สำหรับ Android Studio

Firebase Assistant คือปลั๊กอิน Android Studio ที่ลงทะเบียนแอป Android ของคุณกับโปรเจ็กต์ Firebase และเพิ่มไฟล์กำหนดค่า Firebase ปลั๊กอิน และการอ้างอิงที่จำเป็นให้กับโปรเจ็กต์ Android ของคุณ ทั้งหมดนี้ทำได้จากภายใน Android Studio!

ทำตามคำแนะนำใน หน้าเริ่มต้นใช้งาน Android เพื่อใช้ Firebase Assistant ตรวจสอบว่าคุณใช้ทั้ง Android Studio และ Firebase Assistant เวอร์ชันล่าสุด (ไปที่ ไฟล์ > ตรวจหาการอัปเดต )

เมื่อคุณเลือกผลิตภัณฑ์ Firebase ที่ต้องการเพิ่มลงในแอปของคุณ ผู้ช่วย Firebase จะประกาศการพึ่งพาที่จำเป็นโดยอัตโนมัติในไฟล์ app/build.gradle ของคุณ อย่างไรก็ตาม หากต้องการใช้ฟีเจอร์ Firebase ที่เหนือกว่าความสามารถปัจจุบันของ Firebase Assistant คุณอาจต้องทำการเปลี่ยนแปลงบางอย่างด้วยตนเองกับการอ้างอิงเหล่านี้:

  • หากคุณต้องการใช้ Firebase Android BoM ให้อัปเดตการอ้างอิงใน ไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติคือ app/build.gradle ) เพื่อนำเข้าแพลตฟอร์ม BoM คุณจะต้องลบเวอร์ชันออกจากแต่ละบรรทัดการขึ้นต่อกันของไลบรารี Firebase

  • หากคุณต้องการใช้ ไลบรารีส่วนขยายของ Kotlin ให้แก้ไขบรรทัดการพึ่งพาที่เพิ่มลงใน ไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติคือ app/build.gradle ) เพื่อใช้ไลบรารี Firebase เวอร์ชัน ktx แทน

บริการของ Google — ปลั๊กอินและไฟล์กำหนดค่า

ในการเพิ่ม Firebase ให้กับโปรเจ็กต์ Android คุณต้องเพิ่มปลั๊กอิน google-services และไฟล์กำหนดค่า google-services.json ให้กับโปรเจ็กต์ของคุณ

หากคุณเพิ่ม Firebase ในโครงการ Android ผ่าน คอนโซล Firebase , Management REST API หรือ Firebase CLI คุณต้องเพิ่มปลั๊กอินและไฟล์กำหนดค่าในโครงการของคุณด้วยตนเอง อย่างไรก็ตาม หากคุณใช้ Firebase Assistant งานเหล่านี้จะดำเนินการให้คุณโดยอัตโนมัติในระหว่างการตั้งค่า

ไปที่ เอกสารประกอบของ Android เพื่อเรียนรู้เกี่ยวกับวิธีที่ปลั๊กอินบริการของ Google และไฟล์การกำหนดค่าทำงานร่วมกัน

Firebase Android BoM (รายการวัสดุ)

Firebase Android BoM (Bill of Materials) ช่วยให้คุณจัดการเวอร์ชันของไลบรารี Firebase ทั้งหมดได้ด้วยการระบุเพียงเวอร์ชันเดียว นั่นคือเวอร์ชันของ BoM

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

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

เรียนรู้เพิ่มเติมเกี่ยวกับ การสนับสนุนของ Gradle สำหรับแพลตฟอร์ม BoM

ต่อไปนี้คือวิธีใช้ Firebase Android BoM เพื่อประกาศการอ้างอิงใน ไฟล์ Gradle โมดูล (ระดับแอป) ของคุณ (โดยปกติคือ app/build.gradle ) เมื่อใช้ BoM คุณไม่ต้องระบุเวอร์ชันของไลบรารีแต่ละรายการในบรรทัดการขึ้นต่อกัน

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:32.1.0')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

ต่อไปนี้เป็นคำถามที่พบบ่อยเกี่ยวกับการใช้ Firebase Android BoM:

เปรียบเทียบเวอร์ชัน Firebase BoM

ไลบรารีส่วนขยายของ Kotlin (KTX)

ไลบรารีส่วนขยายของ Firebase Kotlin (KTX) เป็นส่วนร่วมขนาดเล็กของ Firebase SDK พื้นฐานที่ช่วยให้คุณเขียนโค้ด Kotlin ที่สวยงามและใช้สำนวนได้

หากต้องการใช้ไลบรารี KTX ในแอป ให้เปลี่ยนการขึ้นต่อกันเพื่อรวมส่วนต่อท้าย -ktx ไลบรารี KTX แต่ละไลบรารีมีการพึ่งพาไลบรารีฐานโดยอัตโนมัติ ดังนั้นจึงไม่จำเป็นต้องรวมการพึ่งพาทั้งสองในแอปของคุณ

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:32.1.0')

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX library instead (which automatically has a dependency on the base library)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

ไลบรารี KTX แต่ละไลบรารีมีส่วนขยายวากยสัมพันธ์ที่แตกต่างกันของไลบรารีฐาน ตัวอย่างเช่น ไลบรารี Analytics KTX ช่วยให้บันทึกเหตุการณ์ได้ง่ายขึ้น:

ก่อน (ใช้ไลบรารีฐาน)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

หลังจาก (ใช้ห้องสมุด KTX แทน)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

ผลิตภัณฑ์ Firebase ทั้งหมดมี ไลบรารี KTX ยกเว้น Firebase ML และการจัดทำดัชนีแอป

หากคุณยังไม่ได้ตรวจสอบ โปรดดู เอกสารอ้างอิง API สำหรับไลบรารี KTX

โมดูลฟีเจอร์และฟีเจอร์ Play Delivery

ตั้งแต่เดือนพฤษภาคม 2021 (Firebase BoM v28.0.0) คุณสามารถใช้ Firebase Android SDK ในโมดูลฟีเจอร์ไดนามิกซึ่งติดตั้งแยกต่างหากจากโมดูลแอปพลิเคชันพื้นฐานของคุณ

หากต้องการเปิดใช้งานการสนับสนุนสำหรับโมดูลฟีเจอร์แบบไดนามิก ให้เพิ่มการอ้างอิงต่อไปนี้ไปยังไฟล์ build.gradle ของโมดูล ฐาน ของคุณ:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta03'
}

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

ตัวอย่างเช่น หากแอปพลิเคชันของคุณใช้ฐานข้อมูลเรียลไทม์เพื่อขับเคลื่อนฟีเจอร์เรียลไทม์ที่เฉพาะเจาะจง คุณสามารถเพิ่มการพึ่งพา firebase-database ไปยัง build.gradle ของโมดูลฟีเจอร์แทนที่จะเป็นโมดูลพื้นฐาน วิธีนี้จะลดขนาดการดาวน์โหลดสำหรับผู้ใช้ส่วนใหญ่

ระวังข้อควรระวังต่อไปนี้เมื่อใช้ Firebase SDK ในโมดูลฟีเจอร์

  • ผลิตภัณฑ์ต่างๆ เช่น ลิงก์แบบไดนามิกหรือการส่งข้อความในแอปของ Firebase ซึ่งอาศัยเหตุการณ์ first_open ของ Analytics อาจพลาดเหตุการณ์นี้เมื่อใช้ในโมดูลคุณลักษณะแบบไดนามิก

  • เมื่อใช้ Cloud Firestore และการรับรองความถูกต้องร่วมกัน คุณควรรวมทั้งสองอย่างไว้ในโมดูลเดียวกันเสมอ หากไม่สามารถทำได้ ตรวจสอบให้แน่ใจว่าได้โหลดการรับรองความถูกต้อง ก่อน Cloud Firestore มิฉะนั้น การดำเนินการบางอย่างของ Cloud Firestore อาจมีสถานะการรับรองความถูกต้องที่ไม่ถูกต้อง

  • เมื่อใช้ firebase-crashlytics-ndk เป็นการพึ่งพาของโมดูลฟีเจอร์แบบไดนามิก คุณต้องตั้งค่าคุณสมบัติ unstrippedNativeLibsDir ในไฟล์ build.gradle ของแอป ตามที่อธิบายไว้ใน เอกสารประกอบ Crashlytics NDK

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับโมดูลคุณลักษณะและการนำส่งคุณลักษณะของ Play โปรดไปที่ ภาพรวมของการนำส่งคุณลักษณะของ Play

ปลั๊กอิน Gradle บริการของ Google เทียบกับบริการ Google Play เทียบกับ Google Play Store

ระบบนิเวศของ Google, Firebase และ Android หลายส่วนมีหลักการตั้งชื่อที่คล้ายกัน นี่คือคำอธิบายสั้น ๆ สำหรับแต่ละข้อ:

ปลั๊กอิน Gradle ของบริการ Google
ปลั๊กอิน Gradle ( com.google.gms.google-services ) ที่ทำงานในเวลาสร้างเพื่อให้แน่ใจว่าแอปของคุณมีการกำหนดค่าที่ถูกต้องเพื่อเข้าถึง Firebase และ Google API
แม้จะมีชื่อ แต่ปลั๊กอินนี้ไม่เกี่ยวข้องกับบริการ Google Play (ดูรายการถัดไป) และไม่มีผลกระทบต่อความสามารถของแอปในขณะรันไทม์
ปลั๊กอินนี้ยังประมวลผลไฟล์ google-services.json ที่คุณเพิ่มลงในแอปโดยเป็นส่วนหนึ่งของการตั้งค่า Firebase เรียนรู้เพิ่มเติมเกี่ยวกับ ปลั๊กอิน Gradle สำหรับบริการของ Google
บริการ Google Play
บริการพื้นหลังที่มองไม่เห็นซึ่งทำงานบนอุปกรณ์ Android และให้บริการ Google APIs ทั่วไปหลายตัว (เช่น Google Maps และ Google Sign In) แก่แอปบนอุปกรณ์
การรวมศูนย์ API ทั่วไปเหล่านี้ไว้ในบริการเดียว จะช่วยลดขนาดของแอพอื่นๆ และอนุญาตให้อุปกรณ์รับการอัปเดตความปลอดภัยอัตโนมัติและการปรับปรุงคุณสมบัติโดยไม่ต้องอัปเดตระบบปฏิบัติการ เรียนรู้เพิ่มเติมเกี่ยวกับ บริการ Google Play
Google Play สโตร์
ร้านค้าสำหรับดาวน์โหลดแอป ภาพยนตร์ หนังสือ และอื่นๆ บนอุปกรณ์ Android
ในฐานะนักพัฒนาซอฟต์แวร์ คุณจัดการการเผยแพร่ การเผยแพร่ ฯลฯ สำหรับแอปของคุณผ่าน Google Play Console หากอุปกรณ์มี Google Play Store แสดงว่ากำลังใช้บริการ Google Play อยู่ด้วย (ดูรายการก่อนหน้า) เรียนรู้เพิ่มเติมเกี่ยวกับ Google Play Store สำหรับนักพัฒนาซอฟต์แวร์
บริการเกมของ Google Play
ชุด API สำหรับนักพัฒนาเกมมือถือ
เรียนรู้เพิ่มเติมเกี่ยวกับ บริการ Google Play Games และวิธี รวม Firebase กับโครงการบริการ Google Play Games ของคุณ

ทรัพยากรโอเพ่นซอร์สสำหรับ Firebase Android SDK

Firebase สนับสนุนการพัฒนาโอเพ่นซอร์ส และเราสนับสนุนการสนับสนุนและข้อเสนอแนะจากชุมชน

Firebase Android SDK

Firebase Android SDK ส่วนใหญ่ได้รับการพัฒนาเป็นไลบรารีโอเพ่นซอร์สใน ที่เก็บ Firebase GitHub สาธารณะของเรา เรากำลังดำเนินการอย่างแข็งขันเพื่อย้ายไลบรารี Firebase ที่พัฒนาแบบส่วนตัวที่เหลือไปยัง GitHub สาธารณะของเราในเร็วๆ นี้!

ตัวอย่างการเริ่มต้นอย่างรวดเร็ว

Firebase เก็บรักษาคอลเลกชันของตัวอย่างการเริ่มต้นอย่างรวดเร็วสำหรับ Firebase APIs ส่วนใหญ่บน Android ค้นหาการเริ่มต้นอย่างรวดเร็วเหล่านี้ใน ที่เก็บการเริ่มต้นอย่างรวดเร็วของ Firebase GitHub สาธารณะของเรา

คุณสามารถเปิดการเริ่มต้นอย่างรวดเร็วแต่ละรายการเป็นโครงการ Android Studio จากนั้นเรียกใช้บนอุปกรณ์เคลื่อนที่หรืออุปกรณ์เสมือน (AVD) หรือคุณสามารถใช้การเริ่มต้นอย่างรวดเร็วเหล่านี้เป็นโค้ดตัวอย่างสำหรับการใช้ Firebase SDK

หัวข้ออื่นๆ ที่น่าสนใจ