ในขณะที่คุณกำลังพัฒนาโครงการ Android โดยใช้ Firebase คุณอาจค้นพบแนวคิดที่ Firebase ไม่คุ้นเคยหรือเฉพาะเจาะจง หน้านี้มีจุดมุ่งหมายเพื่อตอบคำถามเหล่านั้นหรือชี้ให้คุณดูแหล่งข้อมูลเพื่อเรียนรู้เพิ่มเติม
หากคุณมีคำถามเกี่ยวกับหัวข้อที่ไม่ได้กล่าวถึงในหน้านี้โปรดไปที่ ชุมชนออนไลน์ของ เรา นอกจากนี้เราจะอัปเดตหน้านี้ด้วยหัวข้อใหม่ ๆ เป็นระยะดังนั้นโปรดตรวจสอบอีกครั้งว่าเราได้เพิ่มหัวข้อที่คุณต้องการเรียนรู้หรือไม่
ปลั๊กอิน Firebase Assistant สำหรับ 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
ปลั๊กอินและ
แฟ้มการกำหนดค่าให้กับโครงการของคุณ
หากคุณเพิ่ม 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 อื่นให้ใช้ วิดเจ็ตเปรียบเทียบ ด้านล่าง
เรียนรู้เพิ่มเติมเกี่ยวกับ การรองรับแพลตฟอร์ม BoM ของ Gradle
วิธีใช้ Firebase Android BoM เพื่อประกาศการอ้างอิงใน โมดูล ของคุณ (ระดับแอป) ไฟล์ Gradle (โดยทั่วไปคือ app/build.gradle
) เมื่อใช้ BoM คุณไม่ได้ระบุเวอร์ชันไลบรารีแต่ละเวอร์ชันในบรรทัดการอ้างอิง
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:26.6.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 มีดังนี้
วิธีการลบล้างเวอร์ชันไลบรารีที่กำหนดไว้ใน BoM มีดังนี้
ดูแลสายการนำเข้าแพลตฟอร์ม BoM
ในบรรทัดการอ้างอิงของไลบรารีระบุเวอร์ชันไลบรารีที่ต้องการ ตัวอย่างเช่นวิธีการประกาศการอ้างอิงหากคุณต้องการใช้ v18.0.0 ของการจัดทำดัชนีแอปไม่ว่าเวอร์ชันใดจะถูกกำหนดไว้ใน BoM แต่ คุณต้องการใช้เวอร์ชันของ BoM สำหรับการพิสูจน์ตัวตนและ Cloud Firestore:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:26.6.0') // Declare the dependency for the App Indexing library and specify a version // This specified library version overrides the version designated in the BoM. implementation 'com.google.firebase:firebase-appindexing:18.0.0' // Declare the dependencies for the other Firebase libraries without specifying versions // These libraries will use the versions designated in the BoM. implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
ไม่หากต้องการเพิ่มและใช้ไลบรารี Firebase ในแอปของคุณคุณต้องประกาศแต่ละไลบรารีเป็นบรรทัดการอ้างอิงแยกกันใน ไฟล์ Gradle ของ โมดูล (ระดับแอป) (โดยทั่วไปคือ app/build.gradle
)
การใช้ BoM ช่วยให้แน่ใจว่าไลบรารี Firebase เวอร์ชัน ใด ๆ ในแอปของคุณเข้ากันได้ แต่ BoM ไม่ได้ เพิ่ม ไลบรารี Firebase ลงในแอปของคุณ
ใช่ เมื่อคุณประกาศบรรทัดการอ้างอิงไลบรารี Firebase เฉพาะของคุณให้ใช้ชื่อไลบรารี KTX ดังนี้:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:26.6.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-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
ไม่ Firebase Android BoM จัดการเฉพาะเวอร์ชันไลบรารีสำหรับไลบรารี Firebase ข้อยกเว้นประการเดียวคือการรวม SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google เนื่องจากมักใช้ในแอป Firebase
แม้ว่าไลบรารี Firebase แต่ละไลบรารีจะมีเวอร์ชันแยกกัน แต่ก็ถูกสร้างขึ้นร่วมกันเพื่อให้แน่ใจว่าไลบรารีล่าสุดแต่ละไลบรารีสามารถใช้งานร่วมกับไลบรารีอื่น ๆ ได้
เมื่อใช้ BoM เพื่อจัดการเวอร์ชันไลบรารี Firebase ของแอปคุณไม่จำเป็นต้องติดตามว่าไลบรารี Firebase เวอร์ชันใดที่เข้ากันได้กับไลบรารี Firebase อื่น
แม้ว่าคุณจะใช้ไลบรารี Firebase เพียงหนึ่งไลบรารีในแอปของคุณในตอนนี้ แต่เรายังคงแนะนำให้ใช้ BoM เนื่องจากคุณไม่มีทางรู้ว่าคุณอาจต้องการใช้ไลบรารี Firebase อื่นเมื่อใด
ใช่คุณยังสามารถใช้ BoM ได้! สำหรับ Gradle 5.0 และใหม่กว่าการรองรับ BoM จะเปิดใช้งานโดยอัตโนมัติ อย่างไรก็ตาม สำหรับ Gradle เวอร์ชันก่อนหน้า คุณเพียงแค่ต้อง เปิดใช้งานคุณสมบัติ BoM และนำเข้า BoM ที่แตกต่างกันเล็กน้อย
ในไฟล์
settings.gradle
ของคุณให้เพิ่มenableFeaturePreview('IMPROVED_POM_SUPPORT')
ไปยัง โมดูล ของคุณ (ระดับแอป) ไฟล์ Gradle (โดยปกติคือ
app/build.gradle
) ให้นำเข้า BoM เหมือนไลบรารีปกติ (โดยไม่มีตัวปรับแต่งplatform
) ดังนี้:dependencies { // Import the Firebase BoM implementation 'com.google.firebase:firebase-bom:26.6.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' }
ไปที่ Repo Firebase Android SDK บน GitHub
เปรียบเทียบเวอร์ชัน 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:26.6.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);
After (ใช้ไลบรารี 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 และ App Indexing
หากคุณยังไม่ได้ดู เอกสารอ้างอิง API สำหรับไลบรารี KTX
บริการ Google ปลั๊กอิน Gradle เทียบกับบริการ Google Play เทียบกับ Google Play Store
ระบบนิเวศของ Google, Firebase และ Android หลายส่วนมีรูปแบบการตั้งชื่อที่คล้ายคลึงกัน นี่คือคำอธิบายสั้น ๆ สำหรับแต่ละข้อ:
- ปลั๊กอิน Google Services Gradle
- ปลั๊กอิน Gradle (
com.google.gms.google-services
) ที่ทำงานในเวลาสร้างเพื่อให้แน่ใจว่าแอปของคุณมีการกำหนดค่าที่เหมาะสมในการเข้าถึง Firebase และ Google API - แม้จะมีชื่อ แต่ปลั๊กอินนี้ก็ไม่มีความสัมพันธ์กับบริการ Google Play (ดูรายการถัดไป) และไม่มีผลกระทบต่อความสามารถของแอปของคุณในขณะรันไทม์
- ปลั๊กอินนี้ยังประมวลผลไฟล์
google-services.json
ที่คุณเพิ่มลงในแอปของคุณโดยเป็นส่วนหนึ่งของการตั้งค่า Firebase เรียนรู้เพิ่มเติมเกี่ยวกับ ปลั๊กอิน Google Services 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 Games
- ชุด API สำหรับนักพัฒนาเกมมือถือ
- เรียนรู้เพิ่มเติมเกี่ยวกับ บริการ Google Play Games และวิธี ผสานรวม Firebase กับโครงการบริการ Google Play Games ของ คุณ
แหล่งข้อมูลโอเพนซอร์สสำหรับ Firebase Android SDK
Firebase สนับสนุนการพัฒนาโอเพนซอร์สและเราสนับสนุนให้ชุมชนมีส่วนร่วมและข้อเสนอแนะ
Firebase Android SDK
Firebase Android SDK ส่วนใหญ่ได้รับการพัฒนาเป็นไลบรารีโอเพนซอร์สในที่ เก็บ Firebase GitHub สาธารณะของเรา เรากำลังดำเนินการอย่างเต็มที่เพื่อย้ายไลบรารี Firebase ที่พัฒนาโดยส่วนตัวที่เหลือไปยัง GitHub สาธารณะของเราเร็ว ๆ นี้!
ตัวอย่างการเริ่มต้นอย่างรวดเร็ว
Firebase เก็บรวบรวมตัวอย่างการเริ่มต้นอย่างรวดเร็วสำหรับ Firebase API ส่วนใหญ่บน Android ค้นหา Quickstart เหล่านี้ในที่ เก็บ Quickstart Firebase GitHub สาธารณะของเรา
คุณสามารถเปิดการเริ่มต้นอย่างรวดเร็วแต่ละรายการเป็นโปรเจ็กต์ Android Studio จากนั้นเรียกใช้บนอุปกรณ์เคลื่อนที่หรืออุปกรณ์เสมือน (AVD) หรือคุณสามารถใช้การเริ่มต้นอย่างรวดเร็วเหล่านี้เป็นโค้ดตัวอย่างสำหรับการใช้ Firebase SDK