Catch up on everthing we announced at this year's Firebase Summit. Learn more

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

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

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

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

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

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

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

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

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

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

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

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

แวะไปที่ เอกสารของ Android ที่จะเรียนรู้เกี่ยวกับวิธีการบริการของ Google ปลั๊กอินและการทำงานของไฟล์ config กัน

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

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:29.0.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:29.0.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 In-App Messaging ซึ่งพึ่งพา Analytics first_open เหตุการณ์อาจพลาดงานนี้เมื่อนำมาใช้ในโมดูลคุณลักษณะแบบไดนามิก

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

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

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

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

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

ปลั๊กอิน Gradle บริการของ Google
Gradle ปลั๊กอิน ( com.google.gms.google-services ) ที่วิ่งเวลาที่สร้างเพื่อให้มั่นใจว่าแอปของคุณมีการกำหนดค่าที่เหมาะสมในการเข้าถึง Firebase และ Google APIs
แม้ชื่อของมัน ปลั๊กอินนี้ไม่เกี่ยวข้องกับบริการ Google Play (ดูรายการถัดไป) และไม่มีผลกระทบต่อความสามารถของแอปของคุณในขณะรันไทม์
ปลั๊กอินนี้ยังประมวลผล google-services.json ไฟล์ที่คุณเพิ่มแอปของคุณเป็นส่วนหนึ่งของการตั้งค่า Firebase เรียนรู้เพิ่มเติมเกี่ยวกับ บริการของ Google ปลั๊กอิน Gradle
บริการ 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 เกม และวิธีการ รวม Firebase โครงการบริการ Google Play เกมของคุณ

แหล่งข้อมูลโอเพนซอร์สสำหรับ Firebase Android SDK

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

Firebase Android SDK

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

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

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

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

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