Firebase setzt verstärkt auf Kotlin und wir arbeiten daran, unser Android-Ökosystem zu modernisieren, um Kotlin mit Firebase zugänglicher und benutzerfreundlicher zu machen.
Im Rahmen dieser Modernisierung nehmen wir einige Änderungen an unseren Firebase SDKs für Android vor. Auf dieser Seite finden Sie wichtige Informationen zu dieser Änderung, darunter:
- Was ändert sich?
- Grund für diese Änderung
- Wichtige Termine für diese Änderung
- Migration zur Verwendung von KTX-APIs aus dem Hauptmodul
Informationen zur Migration Ihrer App
Was ändert sich?
Die KTX-APIs (Kotlin Extensions) wurden den jeweiligen Hauptmodulen hinzugefügt. Beispielsweise wurden alle APIs aus firebase-perf-ktx
zu firebase-perf
unter dem Paket com.google.firebase.perf
hinzugefügt.
Durch diese Änderung können Kotlin-Entwickler jetzt die Hauptmodule anstelle der KTX-Module verwenden (bei Verwendung von Firebase BoM v32.5.0+ oder Hauptmodulversionen, die in BoM v32.5.0+ aufgeführt sind).
Im Juli 2025 haben wir die Veröffentlichung neuer Versionen der KTX-Module eingestellt und die KTX-Bibliotheken aus Firebase Android BoM (v34.0.0) entfernt.
Warum nehmen wir diese Änderung vor?
Firebase setzt auf ein Kotlin-First-Ökosystem für Android-Entwickler. Diese Modernisierung der Verpackung bietet folgende Vorteile:
Vereinfachte Abhängigkeitsverwaltung:Sie müssen jetzt nur noch von einem einzigen Modul abhängen. Das Umschalten zwischen dem Hauptmodul und den Kotlin-Erweiterungen oder die Abhängigkeit von beiden ist nicht mehr erforderlich.
Verbesserte Kotlin-Unterstützung:Alle unsere Firebase-SDKs für Android bieten jetzt eine bessere Unterstützung für Kotlin. Wir werden alle neuen Kotlin-freundlichen Funktionen direkt in unsere Hauptmodule einbauen.
Wichtige Termine für diese Änderung
Im Oktober 2023
Im Oktober 2023 wurden die Kotlin-Erweiterungs-APIs (KTX) den jeweiligen Hauptmodulen hinzugefügt. Das bedeutet, dass Sie die KTX-APIs jetzt direkt über die Hauptmodule verwenden können, wenn Sie Firebase BoM v32.5.0+ oder Hauptmodulversionen verwenden, die in BoM v32.5.0+ aufgeführt sind.
Gleichzeitig wurden die KTX-APIs (Kotlin-Erweiterungen) in den KTX-Modulen eingestellt. Weitere Informationen zu dieser Änderung finden Sie in den Versionshinweisen. Während der Phase der Einstellung funktionieren die eingestellten APIs in den KTX-Modulen weiterhin und werden gewartet.
Im Juli 2025
Im Juli 2025 haben wir die Veröffentlichung neuer Versionen der KTX-Module eingestellt und die KTX-Module aus Firebase BoM entfernt (beginnend mit BoM v34.0.0).
Alle zuvor veröffentlichten Versionen eines KTX-Moduls oder der BoM funktionieren weiterhin, aber sie sind jetzt End-of-Maintenance. Das bedeutet, dass wir den KTX-Modulen keine Fehlerkorrekturen, rückwärtskompatiblen Änderungen oder neuen Funktionen hinzufügen werden. Stattdessen wird die gesamte zukünftige Entwicklung für Firebase unter Android nur in den Hauptmodulen (sowohl für Java als auch für Kotlin) erfolgen.
Zu KTX-APIs aus den Hauptmodulen migrieren
Wenn Sie Kotlin-Erweiterungs-APIs (KTX) verwenden, nehmen Sie die folgenden Änderungen in Ihrer App vor, um die APIs aus den Hauptmodulen anstelle der KTX-Module zu verwenden.
Überarbeiten Sie Ihre Gradle-Abhängigkeiten, sodass sie auf dem Hauptmodul und nicht auf dem KTX-Modul basieren. Wenn Sie beispielsweise Firebase Android BoM verwenden (empfohlen):
VORHER
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:34.0.0")) // Using KTX libraries for Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx") implementation("com.google.firebase:firebase-firestore-ktx") }
AFTER
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.0.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") }
Aktualisieren Sie Ihren Code, um alle Vorkommen der KTX-APIs durch die verlagerten APIs im Hauptmodul unter dem Paket
com.google.firebase
zu ersetzen.VORHER
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
AFTER
import com.google.firebase.auth.auth import com.google.firebase.firestore.firestore import com.google.firebase.firestore.toObject import com.google.firebase.Firebase