หน้านี้มีเคล็ดลับและการแก้ปัญหาเฉพาะสำหรับ Android ซึ่งคุณอาจพบเมื่อใช้ Firebase
หากพบปัญหาอื่นๆ หรือไม่พบปัญหาที่ระบุไว้ด้านล่าง อย่าลืมอ่านคําถามที่พบบ่อยหลักของ Firebase เพื่อดูคําถามที่พบบ่อยเกี่ยวกับ Firebase ทั้งหมดหรือเฉพาะผลิตภัณฑ์
นอกจากนี้ คุณยังดูรายการปัญหาที่รายงานและการแก้ปัญหาล่าสุดได้ในที่เก็บ GitHub ของ Firebase Android SDK เราขอแนะนําให้คุณยื่นปัญหาเกี่ยวกับ Firebase Android SDK ของคุณเองในฟอรัมดังกล่าวด้วย
ฉันจะแก้ไขข้อผิดพลาด "มีไคลเอ็นต์ OAuth2 สำหรับชื่อแพ็กเกจนี้อยู่แล้วและมี SHA-1 อยู่ในโปรเจ็กต์อื่น" ได้อย่างไร
ข้อผิดพลาดนี้เกิดขึ้นหากเราตรวจพบว่าโปรเจ็กต์ Firebase หรือ Google Cloud
อื่นมีรหัสไคลเอ็นต์ OAuth 2.0 ที่มีชื่อแพ็กเกจและ SHA-1 ที่คุณระบุไว้ ดูวิธีแก้ไขข้อผิดพลาดนี้
เมื่อเพิ่ม Firebase ลงในโปรเจ็กต์ Android ฉันได้รับข้อผิดพลาด "ไม่พบ"
ข้อผิดพลาดนี้มักจะหมายความว่าแอปของคุณไม่มีข้อมูลอ้างอิงอย่างน้อย 1 รายการที่ไปยังที่เก็บ Maven ของ Google อย่าลืมใส่ที่เก็บ Maven ของ Google (google()
) ไว้ในไฟล์การกําหนดค่า Gradle
- หากโปรเจ็กต์ใช้ไวยากรณ์
plugins
ให้ใส่ไวยากรณ์นั้นในส่วน plugins
ในไฟล์ settings.gradle.kts
หรือ settings.gradle
- หากโปรเจ็กต์ใช้ไวยากรณ์
buildscript
ให้ใส่ไวยากรณ์ดังกล่าวในส่วน buildscript
และ allprojects
ของไฟล์ build.gradle.kts
หรือ build.gradle
ระดับโปรเจ็กต์
เมื่อเพิ่ม Firebase SDK ลงในโปรเจ็กต์ Android ฉันได้รับข้อผิดพลาดเกี่ยวกับการสนับสนุนการเรียกใช้แบบกำหนดเองและการเปิดใช้การกรองภาษา
ในเดือนพฤษภาคม 2021 (Firebase BoM v28.0.0) Firebase ได้ปิดใช้การกรอง Sugar ออกจากไลบรารี Android ทั้งหมด (ดูหมายเหตุเกี่ยวกับรุ่น)
การเปลี่ยนแปลงนี้หมายความว่าบิลด์ Gradle ที่ใช้ปลั๊กอิน Android Gradle (AGP) v4.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.
หากต้องการแก้ไขการสร้างที่ไม่สําเร็จนี้ ให้ทําตามตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้
- เพิ่ม
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.4.2 |
com.google.gms.google-services |
App Distribution ปลั๊กอิน |
com.google.firebase:firebase-appdistribution-gradle |
5.1.1 |
com.google.firebase.appdistribution |
Crashlytics ปลั๊กอิน |
com.google.firebase:firebase-crashlytics-gradle |
3.0.3 |
com.google.firebase.crashlytics |
Performance Monitoring ปลั๊กอิน |
com.google.firebase:perf-plugin |
1.4.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'
...
}