Firebase наращивает свою поддержку Kotlin, и мы работаем над модернизацией нашей экосистемы Android, чтобы сделать Kotlin более доступным и простым в использовании с Firebase.
Для осуществления этой модернизации мы вносим ряд изменений в наши SDK Firebase для Android. На этой странице представлена важная информация об этом изменении, в том числе:
- Что меняется?
- Причина, по которой мы вносим эти изменения
- Важные даты для этих изменений
- Как перейти на использование API KTX из основного модуля
Узнайте, как перенести ваше приложение.
Что меняется?
API расширений Kotlin (KTX) были добавлены в соответствующие основные модули. Например, все API из firebase-perf-ktx были добавлены в firebase-perf в пакет com.google.firebase.perf .
Это изменение означает, что разработчики Kotlin теперь могут полагаться на основные модули вместо модулей KTX (при использовании Firebase BoM версии 32.5.0+ или версий основных модулей, указанных в BoM версии 32.5.0+).
В июле 2025 года мы прекратили выпуск новых версий модулей KTX и удалили библиотеки KTX из Firebase Android BoM (v34.0.0).
Почему мы вносим эти изменения?
Firebase стремится к созданию экосистемы, ориентированной на Kotlin, для разработчиков Android. Эта модернизация системы управления пакетами предоставляет следующие преимущества:
Упрощенное управление зависимостями: теперь вам нужно зависеть только от одного модуля, что избавляет от необходимости переключаться между основным модулем и расширениями Kotlin или зависеть от обоих.
Улучшена поддержка Kotlin: теперь все наши SDK Firebase для Android будут обеспечивать улучшенную поддержку Kotlin. Мы включим все новые функции, совместимые с Kotlin, непосредственно в наши основные модули.
Важные даты для этих изменений
В октябре 2023 года
В октябре 2023 года API расширений Kotlin (KTX) были добавлены в соответствующие основные модули, что означает, что теперь вы можете использовать API KTX непосредственно из основных модулей при использовании Firebase BoM версии 32.5.0+ или версий основных модулей, указанных в BoM версии 32.5.0+.
Параллельно с этим API-интерфейсы расширений Kotlin (KTX) в модулях KTX были объявлены устаревшими (см. примечания к выпуску, описывающие это изменение). В течение периода устаревания устаревшие API-интерфейсы в модулях KTX будут продолжать функционировать и поддерживаться.
В июле 2025 года
В июле 2025 года мы прекратили выпуск новых версий модулей KTX и удалили модули KTX из Firebase BoM (начиная с BoM v34.0.0 ).
Любая ранее выпущенная версия модуля KTX или BoM продолжит функционировать, но их поддержка прекращена . Это означает, что мы не будем добавлять исправления ошибок, обратно совместимые изменения или новые функции в модули KTX. Вместо этого вся дальнейшая разработка Firebase для Android будет вестись только в основных модулях (как для Java, так и для Kotlin).
Как перейти на использование API KTX из основных модулей
Если вы используете API расширений Kotlin (KTX), внесите следующие изменения в ваше приложение, чтобы начать использовать API из основных модулей вместо модулей KTX.
Пересмотрите зависимости Gradle, чтобы они использовали основной модуль, а не модуль KTX. Например, если вы используете Firebase Android BoM (рекомендуется) :
ДО
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:34.17.0")) // Using KTX libraries for Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx") implementation("com.google.firebase:firebase-firestore-ktx") }
ПОСЛЕ
dependencies { // ... // Import the Firebase BoM as usual // Make sure to use Firebase BoM v32.5.0 or higher implementation(platform("com.google.firebase:firebase-bom:34.17.0")) // No need to use the KTX libraries; everything is now in the main module implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
ДО
dependencies { // ... // Using KTX libraries for Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx:23.2.1") implementation("com.google.firebase:firebase-firestore-ktx:25.1.4") }
ПОСЛЕ
dependencies { // ... // No need to use the KTX libraries, everything is now in the main module // Make sure to use a version listed in Firebase BoM v32.5.0 or higher implementation("com.google.firebase:firebase-auth:24.2.0") implementation("com.google.firebase:firebase-firestore:26.5.0") }
Обновите свой код, заменив все упоминания API KTX на перемещенные API в основном модуле пакета
com.google.firebase.ДО
import com.google.firebase.auth.ktx.auth import com.google.firebase.firestore.ktx.firestore import com.google.firebase.firestore.ktx.toObject import com.google.firebase.ktx.Firebase
ПОСЛЕ
import com.google.firebase.auth.auth import com.google.firebase.firestore.firestore import com.google.firebase.firestore.toObject import com.google.firebase.Firebase