Khắc phục sự cố & Câu hỏi thường gặp về Android và Firebase
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Trang này cung cấp các mẹo và thông tin khắc phục sự cố đối với những vấn đề cụ thể về Android mà bạn có thể gặp phải khi sử dụng Firebase.
Bạn gặp phải những thách thức khác hoặc không thấy vấn đề của mình được nêu bên dưới? Hãy nhớ xem Câu hỏi thường gặp chính về Firebase để biết thêm câu hỏi thường gặp chung về Firebase hoặc câu hỏi thường gặp dành riêng cho sản phẩm.
Bạn cũng có thể xem kho lưu trữ GitHub của Firebase Android SDK để biết danh sách mới nhất về các vấn đề đã báo cáo và cách khắc phục sự cố. Bạn cũng nên gửi các vấn đề liên quan đến Firebase Android SDK của riêng mình tại đó!
Tôi gặp lỗi cho biết thư viện ktx
không phân giải được hoặc không tìm thấy.
Lỗi này có thể là do bạn đang sử dụng Firebase BoM và chỉ định một mô-đun KTX làm phần phụ thuộc thư viện sản phẩm.
Vào tháng 7 năm 2025, chúng tôi ngừng phát hành các phiên bản mới của mô-đun KTX và xoá các thư viện KTX khỏi Firebase Android BoM (v34.0.0).
Nếu bạn sử dụng API KTX từ các mô-đun KTX đã phát hành trước đó, thì bạn nên di chuyển ứng dụng để sử dụng API KTX từ các mô-đun chính thay thế. Để biết thông tin chi tiết, hãy xem Câu hỏi thường gặp về sáng kiến này.
Làm cách nào để khắc phục lỗi "Đã có một ứng dụng OAuth2 cho tên gói và SHA-1 này trong một dự án khác"?
Lỗi này xảy ra nếu chúng tôi phát hiện thấy một dự án Firebase hoặc Google Cloud khác chứa mã ứng dụng OAuth 2.0 có tên gói và SHA-1 mà bạn đã chỉ định. Tìm hiểu cách giải quyết lỗi này.
Khi thêm Firebase vào dự án Android, tôi gặp lỗi "Không tìm thấy".
Lỗi này thường có nghĩa là ứng dụng của bạn thiếu một hoặc nhiều tham chiếu đến kho lưu trữ Maven của Google. Nhớ thêm kho lưu trữ Maven của Google (google()
) vào tệp Cấu hình Gradle.
- Nếu dự án của bạn đang sử dụng cú pháp
plugins
, hãy thêm cú pháp đó vào phần plugins
trong tệp settings.gradle.kts
hoặc settings.gradle
.
- Nếu dự án của bạn đang sử dụng cú pháp
buildscript
, hãy thêm cú pháp này vào cả hai mục buildscript
và allprojects
trong tệp build.gradle.kts
hoặc build.gradle
cấp dự án.
Khi thêm một Firebase SDK vào dự án Android, tôi gặp lỗi về tính năng hỗ trợ invoke-custom và việc bật tính năng khử đường.
Vào tháng 5 năm 2021 (Firebase BoM phiên bản 28.0.0), Firebase đã tắt tính năng khử đường cú pháp cho tất cả các thư viện Android của mình (xem ghi chú phát hành).
Thay đổi này có nghĩa là các bản dựng Gradle sử dụng trình bổ trợ Android cho Gradle (AGP) phiên bản 4.2 trở về trước cần bật tính năng hỗ trợ Java 8. Nếu không, khi thêm một SDK Firebase, các dự án Android này sẽ gặp lỗi sau đây khi tạo:
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.
Để khắc phục lỗi này, bạn có thể làm theo một trong hai cách sau:
- Thêm
compileOptions
được liệt kê trong thông báo lỗi vào tệp build.gradle.kts
hoặc build.gradle
cấp ứng dụng.
- Tăng
minSdkVersion
cho dự án Android của bạn lên 26 trở lên.
Tính năng Đăng nhập bằng Google đang hiển thị lỗi "12500:" sau khi tôi phát hành ứng dụng. Làm cách nào để khắc phục lỗi này?
Có 2 lý do có thể khiến điều này xảy ra: bạn chưa cung cấp email hỗ trợ hoặc bạn thiếu khoá SHA. Để khắc phục lỗi này, hãy đảm bảo tất cả các điều kiện sau đều được đáp ứng:
Làm cách nào để thêm trình bổ trợ Firebase vào một dự án Android bằng cú pháp buildscript
?
Firebase có các trình bổ trợ Gradle sau:
Tên trình bổ trợ |
Toạ độ Maven |
Phiên bản mới nhất |
Mã nhận dạng trình bổ trợ |
Trình bổ trợ Dịch vụ Google Play |
com.google.gms:google-services |
4.4.3 |
com.google.gms.google-services |
App Distribution plugin |
com.google.firebase:firebase-appdistribution-gradle |
5.1.1 |
com.google.firebase.appdistribution |
Crashlytics plugin |
com.google.firebase:firebase-crashlytics-gradle |
3.0.5 |
com.google.firebase.crashlytics |
Performance Monitoring plugin |
com.google.firebase:perf-plugin |
2.0.0 |
com.google.firebase.firebase-perf |
Sau đây là cách thêm một trình bổ trợ Firebase vào một dự án Android vẫn sử dụng cú pháp buildscript
:
Trong tệp Gradle cấp gốc (cấp dự án) (<project>/build.gradle.kts
hoặc <project>/build.gradle
), hãy thêm trình bổ trợ làm phần phụ thuộc bằng cách sử dụng toạ độ Maven của trình bổ trợ:
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
}
}
Trong tệp Gradle mô-đun (cấp ứng dụng) (thường là <project>/<app-module>/build.gradle.kts
hoặc <project>/<app-module>/build.gradle
), hãy thêm trình bổ trợ bằng mã nhận dạng trình bổ trợ:
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'
...
}
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-21 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-21 UTC."],[],[],null,["\u003cbr /\u003e\n\nThis page offers tips and troubleshooting for Android-specific issues\nthat you might encounter when using Firebase.\n\nHave other challenges or don't see your issue outlined below? Make sure to check\nout the [main Firebase FAQ](/support/faq) for more pan-Firebase or\nproduct-specific FAQ.\n\nYou can also check out the\n[Firebase Android SDK GitHub repo](https://github.com/firebase/firebase-android-sdk/issues)\nfor an up-to-date list of reported issues and troubleshooting. We encourage you\nto file your own Firebase Android SDK related issues there, too! \n\nI'm getting an error that the `ktx` library failed to resolve or\ncould not be found.\n\nThis error is likely because you're using the Firebase BoM and\nspecifying a KTX module as your product library dependency.\n\n**In July 2025, we stopped releasing new versions of the KTX modules,\nand we removed the KTX libraries from the Firebase Android BoM\n(v34.0.0).**\n\nIf you use KTX APIs from previously released KTX modules, we recommend\nthat you ***migrate your app to use KTX APIs from the main modules\ninstead*** . For details, see the\n[FAQ about this initiative](/docs/android/kotlin-migration). \n\nDo I need to provide a SHA-1 when adding an Android app to a Firebase\nproject?\n\n[SHA-1 information](//developers.google.com/android/guides/client-auth)\nis required by Firebase Authentication (when using\n[Google signin](/docs/auth/android/google-signin) or\n[phone number signin](/docs/auth/android/phone-auth)) and\n[Firebase Dynamic Links](/docs/dynamic-links). If you're not using\nthese features, you don't have to provide a SHA-1. \n\nHow do I resolve this error: \"An OAuth2 client already exists for this\npackage name and SHA-1 in another project\"?\n\nThis error occurs if we detect that another Firebase or Google Cloud\nproject contains an OAuth 2.0 client ID with the package name\nand SHA-1 that you specified. Learn how to\n[resolve this error](//support.google.com/firebase/answer/6401008). \n\nWhen I add Firebase to my Android project, I get a \"Could not find\" error.\n\nThis error usually means that your app is missing one or more references\nto Google's Maven repository. Make sure to include Google's Maven repository\n(`google()`) in your Gradle Configuration file.\n\n- If your project is using the `plugins` syntax, include it in the `plugins` section in your `settings.gradle.kts` or `settings.gradle` file.\n- If your project is using the `buildscript` syntax, include it in both the `buildscript` and `allprojects` sections in your project-level `build.gradle.kts` or `build.gradle` file.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nWhen I add a Firebase SDK to my Android project, I get an error about\ninvoke-custom support and enabling desugaring.\n\n\u003cbr /\u003e\n\nIn May 2021 (Firebase BoM v28.0.0), Firebase disabled desugaring for all its\nAndroid libraries\n(see [release note](/support/release-notes/android#2021-05-11)).\n\nThis change means that Gradle builds that use Android Gradle plugin (AGP) v4.2\nor earlier need to enable Java 8 support. Otherwise, when adding a Firebase SDK,\nthese Android projects get the following build failure: \n\n```\nD8: Invoke-customs are only supported starting with Android O (--min-api 26)\nCaused by: com.android.builder.dexing.DexArchiveBuilderException: Error while dexing.\nThe dependency contains Java 8 bytecode. Please enable desugaring by adding the following to build.gradle\nandroid {\n compileOptions {\n sourceCompatibility 1.8\n targetCompatibility 1.8\n }\n}\nSee https://developer.android.com/studio/write/java8-support.html for details.\nAlternatively, increase the minSdkVersion to 26 or above.\n```\n\nTo fix this build failure, you can follow one of two options:\n\n- Add the listed `compileOptions` from the error message to your **app-level** `build.gradle.kts` or `build.gradle` file.\n- Increase the `minSdkVersion` for your Android project to 26 or above.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nGoogle Sign-in is showing the error \"12500:\" after I released my app. How\ndo I fix it?\n\n\nThere are two possible reasons why this would happen: you haven't provided a\nsupport email or you're missing a SHA key. In order to fix this error, make\nsure **all** of these conditions are true:\n\n- You've added a support email to the [General Settings of your project](https://console.firebase.google.com/project/_/settings/general/) in the Firebase console.\n- You've added the [SHA-1 Certificate fingerprint from your release/production keystore](https://developers.google.com/android/guides/client-auth#using_keytool_on_the_certificate) to your Firebase Android App in the Firebase console (go to settings [**Project settings**](//console.firebase.google.com/project/_/settings/general/), scroll down to *Your apps*, and then select your Android App).\n- You've added the [SHA-1 Certificate fingerprint from the Google Play Console](https://developer.android.com/studio/publish/app-signing#api-providers) to your Firebase Android App in the Firebase console (go to settings [**Project settings**](//console.firebase.google.com/project/_/settings/general/), scroll down to *Your apps*, and then select your Android App).\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nHow to add Firebase plugins to an Android project using the `buildscript`\nsyntax?\n\n\u003cbr /\u003e\n\n| **Tip:** Consider [migrating from `buildscript` to `plugin` syntax](https://developer.android.com/build/migrate-to-kotlin-dsl#migrate-buildscript) as this allows Android Studio to perform code completion and provide other helpful suggestions.\n\nFirebase has the following Gradle plugins:\n\n| Plugin name | Maven coordinates | Latest version | Plugin ID |\n|-------------------------------|-------------------------------------------------------|----------------|---------------------------------------|\n| Google Play services plugin | `com.google.gms:google-services` | 4.4.3 | `com.google.gms.google-services` |\n| App Distribution plugin | `com.google.firebase:firebase-appdistribution-gradle` | 5.1.1 | `com.google.firebase.appdistribution` |\n| Crashlytics plugin | `com.google.firebase:firebase-crashlytics-gradle` | 3.0.6 | `com.google.firebase.crashlytics` |\n| Performance Monitoring plugin | `com.google.firebase:perf-plugin` | 2.0.1 | `com.google.firebase.firebase-perf` |\n\n\u003cbr /\u003e\n\nHere's how to add a Firebase plugin to an Android project that still uses the\n`buildscript` syntax:\n\n1. In your **root-level (project-level)** Gradle file\n (`\u003cproject\u003e/build.gradle.kts` or `\u003cproject\u003e/build.gradle`), add the plugin as\n a dependency using its Maven coordinates:\n\n Kotlin \n\n buildscript {\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n\n dependencies {\n ...\n\n // Add the Maven coordinates and latest version of the plugin\n classpath (\"\u003cvar translate=\"no\"\u003ePLUGIN_MAVEN_COORDINATES\u003c/var\u003e:\u003cvar translate=\"no\"\u003ePLUGIN_VERSION\u003c/var\u003e\")\n }\n }\n\n allprojects {\n ...\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n }\n\n Groovy \n\n buildscript {\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n\n dependencies {\n ...\n\n // Add the Maven coordinates and latest version of the plugin\n classpath '\u003cvar translate=\"no\"\u003ePLUGIN_MAVEN_COORDINATES\u003c/var\u003e:\u003cvar translate=\"no\"\u003ePLUGIN_VERSION\u003c/var\u003e'\n }\n }\n\n allprojects {\n ...\n\n repositories {\n // Make sure that you have the following two repositories\n google() // Google's Maven repository\n mavenCentral() // Maven Central repository\n }\n }\n\n2. In your **module (app-level)** Gradle file (usually\n `\u003cproject\u003e/\u003capp-module\u003e/build.gradle.kts` or\n `\u003cproject\u003e/\u003capp-module\u003e/build.gradle`), add the plugin using its\n plugin ID:\n\n Kotlin \n\n plugins {\n id(\"com.android.application\")\n\n // Add the ID of the plugin\n id(\"\u003cvar translate=\"no\"\u003eFIREBASE_PLUGIN_ID\u003c/var\u003e\")\n ...\n }\n\n Groovy \n\n plugins {\n id 'com.android.application'\n\n // Add the ID of the plugin\n id '\u003cvar translate=\"no\"\u003eFIREBASE_PLUGIN_ID\u003c/var\u003e'\n ...\n }\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e"]]