หน้านี้มีเคล็ดลับและการแก้ปัญหาเฉพาะสำหรับ Android ที่คุณอาจพบเมื่อใช้ Firebase
หากพบปัญหาอื่นๆ หรือไม่เห็นปัญหาของคุณระบุไว้ด้านล่าง อย่าลืมดูคำถามที่พบบ่อยหลักเกี่ยวกับ Firebase เพื่อดูคำถามที่พบบ่อยเพิ่มเติมเกี่ยวกับ Firebase ทั้งหมดหรือเฉพาะผลิตภัณฑ์
นอกจากนี้ คุณยังดูรายการปัญหาที่รายงานและการแก้ปัญหาล่าสุดได้ที่ที่เก็บ GitHub ของ Firebase Android SDK เราขอแนะนำให้คุณรายงานปัญหาเกี่ยวกับ Firebase Android SDK ของคุณเองที่นั่นด้วย
ฉันได้รับข้อผิดพลาดว่าไลบรารี ktx แก้ไขไม่สำเร็จหรือไม่พบไลบรารี
ข้อผิดพลาดนี้อาจเกิดจากการที่คุณใช้ Firebase BoM และระบุโมดูล KTX เป็นทรัพยากร Dependency ของไลบรารีผลิตภัณฑ์
ในเดือนกรกฎาคม 2025 เราได้หยุดเผยแพร่โมดูล KTX เวอร์ชันใหม่ และนำไลบรารี KTX ออกจาก Firebase Android BoM (v34.0.0)
หากคุณใช้ KTX API จากโมดูล KTX ที่เผยแพร่ก่อนหน้านี้ เราขอแนะนำให้คุณย้ายข้อมูลแอปไปใช้ KTX API จากโมดูลหลักแทน ดูรายละเอียดได้ที่คำถามที่พบบ่อยเกี่ยวกับโครงการริเริ่มนี้
ฉันจะแก้ไขข้อผิดพลาด "มีไคลเอ็นต์ OAuth2 สำหรับชื่อแพ็กเกจและ SHA-1 นี้ในโปรเจ็กต์อื่นอยู่แล้ว" ได้อย่างไร
ข้อผิดพลาดนี้จะเกิดขึ้นหากเราตรวจพบว่าโปรเจ็กต์ Firebase หรือ Google Cloud อื่นมีรหัสไคลเอ็นต์ OAuth 2.0 ที่มีชื่อแพ็กเกจและ SHA-1 ที่คุณระบุไว้ ดูวิธีแก้ไขข้อผิดพลาดนี้
เมื่อเพิ่ม Firebase ลงในโปรเจ็กต์ Android ฉันได้รับข้อผิดพลาด "ไม่พบ"
ข้อผิดพลาดนี้มักหมายความว่าแอปของคุณไม่มีการอ้างอิงที่เก็บ Maven ของ Google อย่างน้อย 1 รายการ อย่าลืมใส่ที่เก็บ Maven ของ Google (google()) ในไฟล์การกำหนดค่า Gradle
- หากโปรเจ็กต์ใช้ไวยากรณ์
plugins ให้ใส่ไว้ในส่วน plugins ในไฟล์ settings.gradle.kts หรือ settings.gradle
- หากโปรเจ็กต์ใช้ไวยากรณ์
buildscript ให้ใส่ไว้ในทั้งส่วน buildscript และ allprojects ในไฟล์ build.gradle.kts หรือ build.gradle ระดับโปรเจ็กต์
เมื่อเพิ่ม Firebase SDK ลงในโปรเจ็กต์ Android ฉันได้รับข้อผิดพลาดเกี่ยวกับการรองรับ invoke-custom และการเปิดใช้กระบวนการ Desugaring
ในเดือนพฤษภาคม 2021 (Firebase BoM v28.0.0) Firebase ได้ปิดใช้กระบวนการ Desugaring สำหรับไลบรารี Android ทั้งหมด (ดูบันทึกประจำรุ่น)
การเปลี่ยนแปลงนี้หมายความว่าบิลด์ Gradle ที่ใช้ปลั๊กอิน Android Gradle (AGP) เวอร์ชัน 4.2 หรือก่อนหน้าต้องเปิดใช้การรองรับ Java 8 ไม่เช่นนั้น เมื่อเพิ่ม Firebase SDK โปรเจ็กต์ Android เหล่านี้จะได้รับข้อผิดพลาดในการสร้างต่อไปนี้
D8: Invoke-customs are only supported starting with Android O (--min-api 26)
Caused by: com.android.builder.dexing.DexArchiveBuilderException: Error while dexing.
The dependency contains Java 8 bytecode. Please enable desugaring by adding the following to build.gradle
android {
compileOptions {
sourceCompatibility 1.8
targetCompatibility 1.8
}
}
See https://developer.android.com/studio/write/java8-support.html for details.
Alternatively, increase the minSdkVersion to 26 or above.
หากต้องการแก้ไขความล้มเหลวในการสร้างนี้ คุณสามารถทำตามตัวเลือกใดตัวเลือกหนึ่งจาก 2 ตัวเลือกต่อไปนี้
- เพิ่ม
compileOptions ที่ระบุจากข้อความแสดงข้อผิดพลาดลงในไฟล์ build.gradle.kts หรือ build.gradle ระดับแอป
- เพิ่ม
minSdkVersion สำหรับโปรเจ็กต์ Android เป็น 26 ขึ้นไป
Google Sign-In แสดงข้อผิดพลาด "12500:" หลังจากที่ฉันเผยแพร่แอป ฉันจะแก้ไขได้อย่างไร
สาเหตุที่เป็นไปได้ 2 ประการที่ทำให้เกิดปัญหานี้คือ คุณไม่ได้ระบุอีเมลสนับสนุนหรือไม่มีคีย์ SHA หากต้องการแก้ไขข้อผิดพลาดนี้ โปรดตรวจสอบว่าเงื่อนไขทั้งหมดต่อไปนี้เป็นจริง
ฉันจะเพิ่มปลั๊กอิน Firebase ลงในโปรเจ็กต์ Android โดยใช้ไวยากรณ์ buildscript ได้อย่างไร
Firebase มีปลั๊กอิน Gradle ต่อไปนี้
| ชื่อปลั๊กอิน |
พิกัด Maven |
เวอร์ชันล่าสุด |
รหัสปลั๊กอิน |
| ปลั๊กอินบริการ Google Play |
com.google.gms:google-services |
4.5.0 |
com.google.gms.google-services |
| ปลั๊กอิน App Distribution |
com.google.firebase:firebase-appdistribution-gradle |
5.3.1 |
com.google.firebase.appdistribution |
| ปลั๊กอิน Crashlytics |
com.google.firebase:firebase-crashlytics-gradle |
3.0.8 |
com.google.firebase.crashlytics |
| ปลั๊กอิน Performance Monitoring |
com.google.firebase:perf-plugin |
2.0.2 |
com.google.firebase.firebase-perf |
วิธีเพิ่มปลั๊กอิน Firebase ลงในโปรเจ็กต์ Android ที่ยังคงใช้ไวยากรณ์ buildscript มีดังนี้
ในไฟล์ Gradle ระดับรูท (ระดับโปรเจ็กต์) (<project>/build.gradle.kts หรือ <project>/build.gradle) ให้เพิ่มปลั๊กอินเป็นทรัพยากร Dependency โดยใช้พิกัด Maven ดังนี้
Kotlin
buildscript {
repositories {
// Make sure that you have the following two repositories
google() // Google's Maven repository
mavenCentral() // Maven Central repository
}
dependencies {
...
// Add the Maven coordinates and latest version of the plugin
classpath ("PLUGIN_MAVEN_COORDINATES:PLUGIN_VERSION")
}
}
allprojects {
...
repositories {
// Make sure that you have the following two repositories
google() // Google's Maven repository
mavenCentral() // Maven Central repository
}
}
Groovy
buildscript {
repositories {
// Make sure that you have the following two repositories
google() // Google's Maven repository
mavenCentral() // Maven Central repository
}
dependencies {
...
// Add the Maven coordinates and latest version of the plugin
classpath 'PLUGIN_MAVEN_COORDINATES:PLUGIN_VERSION'
}
}
allprojects {
...
repositories {
// Make sure that you have the following two repositories
google() // Google's Maven repository
mavenCentral() // Maven Central repository
}
}
ในไฟล์ Gradle ระดับโมดูล (ระดับแอป) (โดยปกติคือ <project>/<app-module>/build.gradle.kts หรือ <project>/<app-module>/build.gradle) ให้เพิ่มปลั๊กอินโดยใช้รหัสปลั๊กอิน ดังนี้
Kotlin
plugins {
id("com.android.application")
// Add the ID of the plugin
id("FIREBASE_PLUGIN_ID")
...
}
Groovy
plugins {
id 'com.android.application'
// Add the ID of the plugin
id 'FIREBASE_PLUGIN_ID'
...
}
ฉันควรใส่ประกาศเกี่ยวกับโอเพนซอร์สใดในแอป
Firebase Android SDK มีตัวช่วย Activity สำหรับแสดงข้อมูลใบอนุญาต