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

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

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

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

ปลั๊กอิน Firebase Assistant สำหรับ Android Studio

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

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

เมื่อคุณเลือกผลิตภัณฑ์ Firebase ที่ต้องการเพิ่มลงในแอปของคุณ Firebase Assistant จะประกาศการพึ่งพาที่จำเป็นในไฟล์ 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- 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:30.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:30.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

โมดูลคุณลักษณะและการเล่นคุณลักษณะ Delivery

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

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

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

เมื่อคุณได้เพิ่มการรองรับโมดูลแบบไดนามิกแล้ว คุณสามารถเพิ่มการพึ่งพา Firebase SDK (มีหรือไม่มี 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

บริการของ Google ปลั๊กอิน Gradle เทียบกับบริการ 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 API ทั่วไปหลายตัว (เช่น Google Maps และ Google Sign In) ให้กับแอปบนอุปกรณ์
การรวม API ทั่วไปเหล่านี้ไว้ในบริการเดียวจะช่วยลดขนาดของแอพอื่น ๆ และช่วยให้อุปกรณ์ได้รับการอัปเดตความปลอดภัยอัตโนมัติและการปรับปรุงคุณสมบัติโดยไม่ต้องอัปเดตระบบปฏิบัติการ เรียนรู้เพิ่มเติมเกี่ยวกับ บริการ Google Play
Google Play Store
ร้านค้าสำหรับดาวน์โหลดแอป ภาพยนตร์ หนังสือ และอื่นๆ บนอุปกรณ์ 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 SDKs

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

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

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

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

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