AndroidX: Was es ist, wichtigste Bibliotheken und Migration

Autor: IT Sectr Veröffentlicht: 2026-05-01 Lesezeit: 8 Min.

AndroidX ist eine Sammlung von Jetpack-Bibliotheken von Google, die die veraltete Support Library ersetzt hat. Laut der Google Developer Documentation, 2024 bietet AndroidX abwärtskompatible Komponenten für alle Android-Versionen und ist der Standard der modernen Android-Entwicklung. AndroidX-Bibliotheken umfassen Werkzeuge für UI, Navigation, Datenverarbeitung, Kamera und Hintergrundaufgaben.

Wichtige Punkte

  • AndroidX ist der Nachfolger der Support Library, veröffentlicht 2018 als Teil von Jetpack
  • AndroidX-Bibliotheken sind unabhängig von der API-Version und funktionieren auf Geräten mit Android 4.0+
  • Die Migration von der Support Library erfolgt automatisch über Android Studio
  • Kernmodule: Activity, Fragment, RecyclerView, Navigation, Room, WorkManager
  • Semantische Versionierung ermöglicht die unabhängige Aktualisierung von Bibliotheken

Was ist AndroidX

AndroidX ist eine Open-Source-Bibliothek, die Teil von Android Jetpack ist. Google veröffentlichte AndroidX 2018 als Ersatz für die Support Library, die seit 2011 abwärtskompatible Komponenten für ältere Android-Versionen bereitstellte.

Vor AndroidX hatte jede Support Library-Komponente ihre eigene Version, die an die targetSdkVersion gebunden war. Entwickler mussten mehrere Versionen derselben Bibliothek gleichzeitig einbinden, was zu Abhängigkeitskonflikten und einer Vergrößerung der APK-Größe führte.

AndroidX löste dieses Problem durch semantische Versionierung (SemVer). Jetzt ist jede Bibliothek ein separates Gradle-Artefakt mit einer Version im Format MAJOR.MINOR.PATCH. Entwickler können Room von 2.4.0 auf 2.6.0 aktualisieren, ohne Activity, Fragment oder andere Module zu berühren.

Geschichte von AndroidX

Die erste stabile Version von AndroidX 1.0.0 erschien im Dezember 2018 zusammen mit Android 9 Pie. Google kündigte an, dass die Support Library in den Wartungsmodus übergeht und alle neuen Komponenten — Navigation, WorkManager, Compose — nur noch als Teil von AndroidX veröffentlicht werden. Die letzte Support Library-Version — 28.0.0 — wurde 2019 veröffentlicht.

Laut Google I/O 2019 war der Hauptgrund für den Übergang die Notwendigkeit, Update-Veröffentlichungen zu beschleunigen. Im alten Modell musste eine Bibliothek aufgrund einer einheitlichen Paketversion auf eine andere warten. AndroidX beseitigte diesen Engpass, und Jetpack erhielt alle 2–3 Monate Major- und Minor-Releases.

Unterschiede zwischen AndroidX und Support Library

Der Hauptunterschied ist der Namensraum. Die Support Library verwendete das Paket android.support.*, während AndroidX zu androidx.* wechselte. Diese Änderung ermöglichte die Aufteilung der Bibliotheken in funktionale Module. Zum Beispiel hieß Fragment in der Support Library android.support.v4.app.Fragment, während es in AndroidX androidx.fragment.app.Fragment ist.

Der zweite wichtige Unterschied ist die Architektur. AndroidX wird mit Jetpack ausgeliefert — einer Sammlung von Architekturempfehlungen für Apps. Jetpack umfasst ViewModel, LiveData, Room, Navigation und WorkManager, die als einheitliches Ökosystem und nicht als verstreute Hilfsprogramme konzipiert wurden.

Die Abwärtskompatibilität wurde ebenfalls verbessert. Während die Support Library Android 2.3+ unterstützte, garantiert AndroidX den Betrieb auf Geräten mit Android 4.0 (API 14) und höher — dies deckt laut Google Play Console 2024 über 99% der aktiven Geräte ab.

Zusammensetzung der AndroidX-Bibliotheken

AndroidX umfasst über 100 Bibliotheken, gruppiert nach Kategorien. Jede Gruppe deckt einen bestimmten Bereich ab: UI, Daten, Navigation, Hintergrundaufgaben, Multimedia und Tests. Nachfolgend finden Sie eine Übersicht der wichtigsten Module.

Kern- und Basisbibliotheken

androidx.core:core ist die Basissbibliothek, die abwärtskompatible Versionen von System-APIs enthält: NotificationCompat, ActivityCompat, ContextCompat. Das Modul core-ktx bietet Kotlin-Erweiterungen für die Arbeit mit Dateien, SharedPreferences und View-Elementen.

Die Bibliothek androidx.activity:activity führte die Activity Result API (registerForActivityResult) ein, die die veraltete startActivityForResult ersetzt. Das Modul fragment:fragment verwaltet den Lebenszyklus von Fragmenten und unterstützt FragmentManager für Transaktionen und den Backstack.

androidx.lifecycle ist die Grundlage der Jetpack-Architektur. LifecycleOwner und LifecycleObserver ermöglichen es Komponenten, auf Änderungen des Activity- oder Fragment-Lebenszyklus zu reagieren. ViewModel bewahrt Daten bei Bildschirmdrehung, während LiveData die UI über Datenänderungen benachrichtigt.

kotlin
class MainViewModel : ViewModel() {
    private val _users = MutableLiveData<List<User>>()
    val users: LiveData<List<User>> = _users

    fun loadUsers() {
        viewModelScope.launch {
            val result = repository.getUsers()
            _users.value = result
        }
    }
}

UI-Bibliotheken

androidx.recyclerview:recyclerview ist eine leistungsstarke Komponente zur Anzeige von Listen und Gittern. RecyclerView unterstützt LayoutManager (LinearLayoutManager, GridLayoutManager), ItemDecoration und Animationen über ItemAnimator. Die ListAdapter-Bibliothek mit AsyncListDiffer vereinfacht Listenaktualisierungen durch automatische Differenzberechnung.

androidx.navigation:navigation ist eine Bibliothek zur Navigation zwischen Bildschirmen. Die Navigation Component arbeitet mit NavHostFragment und NavController, unterstützt Safe Args für die Übergabe typisierter Parameter und Deep Links für externe Links. NavGraph beschreibt alle Routen in einer XML-Datei.

androidx.compose.ui ist ein deklaratives UI-Framework, Jetpack Compose, das auf Kotlin basiert. Im Gegensatz zum View-System zeichnet Compose nur geänderte Elemente durch Recomposition neu. Material Design 3-Komponenten (Button, TextField, Scaffold) sind im Modul material3 verfügbar.

BibliothekArtefaktZweck
Fragmentandroidx.fragmentFragmentverwaltung und Transaktionen
RecyclerViewandroidx.recyclerviewOptimierte Listen und Gitter
Navigationandroidx.navigationBildschirmnavigation
Compose UIandroidx.compose.uiDeklarative UI in Kotlin

Datenbibliotheken

androidx.room:room ist ein ORM für die lokale Datenspeicherung. Room generiert DAO-Klassen aus annotierten SQLite-Abfragen, validiert die SQL-Syntax zur Kompilierzeit und unterstützt RxJava und Kotlin Flow. Version 2.6 enthält KSP-Unterstützung für schnellere Codegenerierung.

androidx.work:workmanager ist eine Bibliothek für Hintergrundaufgaben mit garantierter Ausführung. WorkManager unterstützt periodische Aufgaben, Arbeitsketten (beginWith, then) und Startkriterien (Constraints: Netzwerk, Ladung, Speicher). Selbst wenn die App geschlossen ist, liefert WorkManager die Aufgabe nach einem Geräteneustart aus.

androidx.datastore:datastore ist ein moderner Ersatz für SharedPreferences. DataStore verwendet Kotlin Coroutines und Flow, arbeitet synchron und asynchron und verhindert die Blockierung des UI-Threads. Preferences DataStore speichert einfache Schlüssel-Wert-Paare, während Proto DataStore typisierte Objekte über Protocol Buffers verarbeitet.

Wie migriert man zu AndroidX

Die automatische Migration ist die von Google empfohlene Methode für den Übergang von der Support Library zu AndroidX. Android Studio enthält ab Version 3.2 das integrierte Tool Refactor Migrate to AndroidX, das Namensräume ersetzt und Abhängigkeiten in build.gradle aktualisiert.

Vor der Migration müssen Sie die compileSdk-Version auf 28 oder höher aktualisieren. Stellen Sie außerdem sicher, dass alle Drittanbieter-Bibliotheken AndroidX unterstützen. Wenn eine Abhängigkeit noch nicht migriert ist, verwenden Sie das Flag android.enableJetifier=true in gradle.properties — es schreibt automatisch den Bytecode von Drittanbieter-Bibliotheken um.

Automatische Migration in Android Studio

Wählen Sie in Android Studio aus dem Menü Refactor Migrate to AndroidX. Die IDE scannt das gesamte Projekt, findet alle Importe aus dem Paket android.support.* und ersetzt sie durch androidx.*. Die Abhängigkeiten in app/build.gradle werden ebenfalls aktualisiert — Support Library-Artefakte werden durch entsprechende AndroidX-Versionen ersetzt.

Nach der Migration kann der Gradle Sync Fehler anzeigen, wenn einige Abhängigkeiten nicht gefunden wurden. Überprüfen Sie die Liste der verwendeten Bibliotheken in der Google Maven-Dokumentation — alle AndroidX-Artefakte sind auf google() veröffentlicht. Wenn eine Bibliothek nicht verfügbar ist, fügen Sie mavenCentral() zu repositories hinzu.

groovy
android {
    compileSdk 34
}

dependencies {
    // Support Library (veraltet)
    // implementation 'com.android.support:appcompat-v7:28.0.0'
    
    // AndroidX
    implementation 'androidx.core:core-ktx:1.13.1'
    implementation 'androidx.appcompat:appcompat:1.7.0'
    implementation 'androidx.activity:activity-ktx:1.9.3'
    implementation 'androidx.fragment:fragment-ktx:1.8.5'
    implementation 'androidx.recyclerview:recyclerview:1.3.2'
    implementation 'androidx.room:room-runtime:2.6.1'
    ksp 'androidx.room:room-compiler:2.6.1'
}

Manuelle Migration

Wenn das Projekt zu groß ist oder benutzerdefinierte Views aus der Support Library enthält, kann die automatische Ersetzung unvollständig sein. Ersetzen Sie manuell alle Zeichenfolgen im Code: Ändern Sie Importe, XML-Attribute (app/src/main/res) und Manifest-Referenzen. Bei Support Library-Attributen ändert sich das Präfix android: zu app: (z. B. app:cardCornerRadius statt android:cardCornerRadius).

Überprüfen Sie nach der manuellen Migration die R-Referenzen. Die Support Library exportierte Ressourcen über android.support.v7.appcompat.R, während AndroidX androidx.appcompat.R verwendet. Durchsuchen Sie das Projekt und ersetzen Sie alle Verweise auf alte R-Pfade. Der Projekt-Build sollte ohne Fehler oder Abwarnungen abgeschlossen werden.

Vorteile der Verwendung von AndroidX

Der erste Vorteil von AndroidX ist die Modularität. Sie binden nur die Bibliotheken ein, die Sie tatsächlich verwenden. Wenn Ihre App nur RecyclerView und Navigation benötigt, müssen Sie nicht die gesamte Support Library mit allen View-Komponenten einbinden. Dies reduziert die APK-Größe und beschleunigt die Build-Zeit.

Der zweite Vorteil sind regelmäßige Updates. Jetpack veröffentlicht alle 1–3 Monate stabile Versionen. Room 2.6.0, veröffentlicht 2024, fügte KSP-Unterstützung und Kotlin 2.0-Kompatibilität hinzu. Navigation 2.8.0 führte typsichere Routen basierend auf Kotlinx Serialization ein. Entwickler erhalten neue Funktionen, ohne auf die nächste Android-Version warten zu müssen.

Der dritte Vorteil ist die Kotlin-Integration. Alle AndroidX-Bibliotheken haben -ktx-Module mit Erweiterungsfunktionen. viewLifecycleOwner.lifecycleScope startet Coroutinen im Fragment-Kontext, collectLatest verarbeitet Flow, und SharedFlow und StateFlow sind vollständig mit lifecycle-aware-Komponenten kompatibel. Dies macht den Code prägnanter und sicherer.

Die Abwärtskompatibilität ist ein entscheidender Vorteil von AndroidX gegenüber neuen Plattform-APIs. Sie können AppCompatDelegate.setDefaultNightMode für das dunkle Theme auf Android 4.0+, NotificationCompat.setBubble für Bubbles auf Android 5.0+ und LocationRequestCompat für fused location auf Android 4.0+ verwenden. Die Geräteabdeckung erreicht 99%, ohne die minimale SDK-Version zu erhöhen.

Der vierte Vorteil sind Tests. AndroidX enthält die Bibliothek androidx.test zum Schreiben von instrumentierten und Unit-Tests. FragmentScenario und ActivityScenario ermöglichen das Testen von UI-Komponenten in Isolation, während TestNavHostController die Navigation ohne ein echtes Gerät überprüft. MockK und Robolectric ergänzen das Ökosystem.

Häufig gestellte Fragen

Was ist der Unterschied zwischen AndroidX und Support Library?

AndroidX verwendet den Namensraum androidx.* statt android.support.*, hat unabhängige Versionierung (SemVer), enthält Jetpack-Bibliotheken und unterstützt Kotlin -ktx-Erweiterungen. Die Support Library wurde 2019 auf Version 28.0.0 eingefroren.

Wie fügt man AndroidX zu einem neuen Projekt hinzu?

Aktivieren Sie in Android Studio das Flag Use AndroidX im Projekterstellungsschritt. Fügen Sie für bestehende Projekte android.useAndroidX=true und android.enableJetifier=true in gradle.properties hinzu. Ersetzen Sie dann die Abhängigkeiten in build.gradle durch Artefakte aus der Gruppe androidx.

Ist die Migration zu AndroidX obligatorisch?

Google Play verlangt, dass alle Apps und Updates AndroidX verwenden. Der Support der Support Library wurde eingestellt und sie erhält keine Sicherheitspatches mehr. Wenn Ihre App noch nicht migriert ist, kann dies zur Ablehnung des Updates in der Google Play Console führen.

Was ist Jetpack in Android?

Jetpack ist eine Sammlung von Bibliotheken, Tools und Richtlinien von Google für die Android-App-Entwicklung. AndroidX ist die Grundlage von Jetpack. Jetpack umfasst Architecture Components (Lifecycle, ViewModel, Room), UI (Compose, Fragment, RecyclerView) und Behavior (WorkManager, Navigation, CameraX).

Kann AndroidX mit Jetpack Compose verwendet werden?

Ja, Jetpack Compose selbst ist Teil von AndroidX (androidx.compose.ui). Die Bibliotheken ViewModel, Navigation, Room und WorkManager sind vollständig mit Compose kompatibel. Die Funktionen collectAsState() und collectAsStateWithLifecycle() bieten Flow-Integration mit Composable-Funktionen.

Zusammenfassung

  • AndroidX ist eine moderne Sammlung von Jetpack-Bibliotheken, der Nachfolger der Support Library mit semantischer Versionierung
  • Über 100 Module decken UI, Daten, Navigation, Hintergrundaufgaben, Multimedia und Tests ab
  • Die automatische Migration in Android Studio ersetzt Importe und Abhängigkeiten mit wenigen Klicks
  • Kotlin-Erweiterungen -ktx reduzieren Boilerplate-Code und integrieren sich mit Coroutinen und Flow
  • Abwärtskompatibilität mit Android 4.0+ deckt 99% der aktiven Geräte ab
  • Jetpack vereint AndroidX mit Architekturempfehlungen — ViewModel, Room, Navigation, WorkManager
  • Verwenden Sie AndroidX in allen neuen Projekten — es ist der Industriestandard seit 2019

Wir entwickeln eine mobile Applikation schlüsselfertig

IT Sectr entwickelt seit 2017 iOS- und Android-Apps für Startups und Unternehmen. Wir beraten Sie und schlagen die beste Lösung vor.

Projekt besprechen

Lesen Sie auch