Android Jetpack
Jetpack ist eine Suite von Bibliotheken, die Ihnen hilft, Best Practices zu befolgen, Boilerplate-Code zu reduzieren und Code zu schreiben, der auf allen Android-Versionen, Geräten und Formfaktoren konsistent funktioniert. So können Sie sich auf den Code konzentrieren, der Ihnen wichtig ist.
Jetpack Compose
UI mit „Compose“ entwickeln
Ein modernes Toolkit zum Erstellen nativer Benutzeroberflächen, mit dem du die UI-Entwicklung für Android vereinfachen und beschleunigen kannst.
Warum Android Jetpack?
Angewandtes Wissen
Die Android Jetpack-Bibliotheken, die auf modernen Designpraktiken basieren, ermöglichen dank integrierter Abwärtskompatibilität weniger Abstürze und weniger Speicherlecks.
Boilerplate-Code entfernen
Android Jetpack übernimmt mühsame Aufgaben wie die Verwaltung von Hintergrundaufgaben, die Navigation und den Aktivitätslebenszyklus, damit Sie sich auf die Entwicklung Ihrer App konzentrieren können.
Fragmentierung reduzieren
Reduziere die Komplexität mit Bibliotheken, die einheitlich für alle Android-Versionen und -Geräte funktionieren.
Für jede Displaygröße entwickeln
Jetpack-Bibliotheken wie androidx.compose.material3.adaptive.layout vereinfachen die Entwicklung adaptiver Layouts, die für alle Anzeigegrößen optimiert sind.
Jetpack verwenden
Grundlagenschulung
Im Kurs „Android-Grundlagen mit Compose“ kannst du die wichtigsten Jetpack-Bibliotheken kennenlernen und den Textbaustein in deiner App reduzieren
Praktische Anleitung
Mit drei Jetpack-Bibliotheken können Sie Ihre Datenschicht in der Praxis vereinfachen: LiveData, ViewModel und Room.
Jetzt in der Android-Beispiel-App
Hier erfährst du, wie die moderne Android-Architektur in einer realen App implementiert wird.
Jetpack-Bibliotheken Alle Bibliotheken ansehen
* Beliebte und häufig verwendete Bibliotheken werden zuerst aufgeführt.
| activity * | Zugriff auf zusammensetzbare APIs, die auf Activity basieren. |
| Adaptive Komponenten von Material Design 3 | Adaptive Benutzeroberflächen mit Material Design 3-Komponenten erstellen |
| appcompat * | Ermöglicht den Zugriff auf neue APIs in älteren API-Versionen der Plattform (viele davon mit Material Design). |
| appsearch * | Benutzerdefinierte In-App-Suchfunktionen für Ihre Nutzer erstellen |
| Kamera * | Mobile Kamera-Apps erstellen |
| compose * | Definiere deine Benutzeroberfläche programmatisch mit zusammensetzbaren Funktionen, die ihre Form und Datenabhängigkeiten beschreiben. |
| databinding * | Binde UI-Komponenten in deinen Layouts in einem deklarativen Format an Datenquellen in deiner App. |
| fragment * | Segmentieren Sie Ihre App in mehrere, unabhängige Bildschirme, die in einer Aktivität gehostet werden. |
| hilt * | Erweitern Sie die Funktionalität von Dagger Hilt, um die Abhängigkeitsinjektion bestimmter Klassen aus den androidx-Bibliotheken zu ermöglichen. |
| lifecycle * | Erstelle lebenszyklusbewusste Komponenten, die ihr Verhalten an den aktuellen Lebenszyklusstatus einer Aktivität oder eines Fragments anpassen können. |
| Material Design-Komponenten * | Modulare und anpassbare Material Design-UI-Komponenten für Android. |
| navigation * | In-App-UI erstellen und strukturieren, Deeplinks verarbeiten und zwischen Bildschirmen wechseln |
| Paging * | Daten in Seiten laden und in einer RecyclerView darstellen. |
| Zimmer * | Erstellen, speichern und verwalten Sie persistente Daten, die von einer SQLite-Datenbank unterstützt werden. |
| room3 * | Nichtflüchtige Daten erstellen, speichern und verwalten, die von einer SQLite-Datenbank unterstützt werden. |
| test * | Testen unter Android |
| work * | Aufschiebbare, einschränkungsbasierte Hintergrundaufgaben planen und ausführen |
| a2ui | Der Jetpack Compose-Renderer für die Kommunikation zwischen KI-Agenten und Benutzeroberfläche (Agent-to-UI, A2UI) bietet eine Implementierung des A2UI-Protokolls. Damit können KI-Agenten umfangreiche, interaktive Benutzeroberflächen generieren, die native Compose-Komponenten rendern, ohne beliebigen Code auszuführen. |
| a2ui.compose | Der Jetpack Compose Agent-to-UI-Renderer (A2UI) bietet eine Implementierung des A2UI-Protokolls, mit dem KI-Agenten umfangreiche, interaktive Benutzeroberflächen generieren können, die native Compose-Komponenten rendern, ohne beliebigen Code auszuführen. |
| ads | Werbe-ID mit oder ohne Play-Dienste abrufen |
| annotation.keep | Aufgaben |
| annotation | Metadaten bereitstellen, die Tools und anderen Entwicklern helfen, den Code Ihrer App zu verstehen. |
| appfunctions | Ermöglicht Apps, Funktionen und Daten mit KI-Assistenten zu teilen, damit diese Aufgaben direkt auf dem Gerät finden und ausführen können, um Nutzeranfragen zu erfüllen. |
| arch.core | Helfer für andere Architekturabhängigkeiten, einschließlich JUnit-Testregeln, die mit LiveData verwendet werden können. |
| asynclayoutinflater | Layouts asynchron aufblähen, um Ruckeln in der Benutzeroberfläche zu vermeiden. |
| autofill | Genauigkeit von Autofill durch erweiterte Hinweise verbessern |
| benchmark | Die Leistung Ihres Codes in Android Studio genau messen |
| biometric | Authentifizieren Sie sich mit biometrischen Daten oder Geräteanmeldedaten und führen Sie kryptografische Vorgänge aus. |
| bluetooth | Verwenden Sie die Bluetooth-Funktionen der Android-Plattform mit abwärtskompatiblen APIs. |
| Browser | Webseiten im Standardbrowser des Nutzers anzeigen |
| camera.featurecombinationquery | Kamerafunktionen abfragen. |
| camera.media3 | Aufgaben |
| camera.viewfinder | Eigenständiger composable- und ansichtsbasierter Sucher für die Kamera |
| car-app | Apps mit Vorlage für Android Auto und Android Automotive OS entwickeln |
| cardview | Implementieren Sie das Material Design-Kartenmuster mit abgerundeten Ecken und Schlagschatten. |
| Sammlung | Reduzieren Sie die Speicherauswirkungen vorhandener und neuer kleiner Sammlungen. |
| compose.animation | Animationen in Jetpack Compose-Anwendungen erstellen, um die Nutzerfreundlichkeit zu verbessern |
| compose.compiler | @Zusammensetzbare Funktionen transformieren und Optimierungen mit einem Kotlin-Compiler-Plug-in ermöglichen |
| compose.foundation | Jetpack Compose-Anwendungen mit einsatzbereiten Bausteinen schreiben und die Grundlage erweitern, um eigene Designsystemteile zu erstellen. |
| compose.material | Jetpack Compose-UIs mit einsatzbereiten Material Design-Komponenten erstellen Dies ist der Einstiegspunkt auf höherer Ebene von Compose, der Komponenten bereitstellt, die den auf www.material.io beschriebenen Komponenten entsprechen. |
| compose.material3 | Jetpack Compose-UIs mit Material Design 3-Komponenten erstellen – der nächsten Generation von Material Design. Material 3 umfasst aktualisierte Designs und Komponenten sowie Material You-Personalisierungsfunktionen wie dynamische Farben. Es ist so konzipiert, dass es mit dem neuen visuellen Stil und der System-UI von Android 12 harmoniert. |
| compose.material3.adaptive | Mit der adaptiven Material 3-Bibliothek können Sie adaptive Benutzeroberflächen erstellen, die sich automatisch an Fensterkonfigurationen wie Fenstergrößenklassen oder Gerätepositionen anpassen. Die Bibliothek bietet Standardimplementierungen für das Gerüst und Composables für Bausteine, mit denen Sie eigene benutzerdefinierte Funktionen erstellen können. |
| compose.remote.foundation | Aufgaben |
| compose.remote | Remote Compose ist ein Framework zum Erstellen von Benutzeroberflächen für Remote-Oberflächen. |
| compose.runtime | Grundlegende Bausteine des Programmiermodells und der Zustandsverwaltung von Compose sowie die Kernlaufzeit für das Compose Compiler-Plug-in. |
| compose.ui | Grundlegende Komponenten der Compose-UI, die für die Interaktion mit dem Gerät erforderlich sind, einschließlich Layout, Zeichnen und Eingabe. |
| gleichzeitig | Aufgaben mit Koroutinen aus dem Hauptthread verschieben und ListenableFuture nutzen. |
| constraintlayout | Widgets lassen sich mit der relativen Positionierung flexibel positionieren und in der Größe anpassen. |
| contentpager | ContentProvider-Daten in einem Hintergrundthread laden und durchblättern. |
| coordinatorlayout | Positionieren Sie Widgets der obersten Ebene, z. B. AppBarLayout und FloatingActionButton. |
| locationbutton | |
| core | Sie können die neuesten Plattformfunktionen und APIs nutzen und gleichzeitig ältere Geräte unterstützen. |
| core.uwb | UWB (Ultrabreitband) auf unterstützten Geräten implementieren |
| Anmeldedaten | Diese Bibliothek bietet einheitlichen Zugriff auf die Anmeldedaten eines Nutzers. Dazu können Passwörter, Passkeys und Verbundanmeldedaten gehören. Diese Bibliothek sollte verwendet werden, um nahtlose und sichere Anmeldevorgänge zu ermöglichen. |
| credentials.providerevents | Diese Bibliothek bietet eine Reihe von APIs für Anmeldedatenanbieter, mit denen sie an Anbieterereignissen wie der Übertragung von Anmeldedaten teilnehmen und Änderungen an Anmeldedaten signalisieren können. |
| credentials.registry | Um diese Probleme zu lösen, fügen wir einen neuen Registrierungsmechanismus hinzu, mit dem eine App digitale Anmeldedaten datenschutzfreundlich bereitstellen kann. Grob gesagt registriert die Anbieter-App alle infrage kommenden digitalen Ausweise vorab beim Credential Manager. Wenn der Credential Manager eine App-Anfrage für einen bestimmten digitalen Ausweis erhält, führt er den Abgleich der Ausweise und die Benutzeroberfläche für die Nutzerauswahl in einer Sandbox aus. |
| cursoradapter | Cursor-Daten für ein ListView-Widget verfügbar machen |
| customview | Benutzerdefinierte Ansichten implementieren |
| datastore | Daten asynchron, konsistent und transaktional speichern, um einige der Nachteile von SharedPreferences zu überwinden |
| documentfile | Eine Datei ansehen |
| draganddrop | Drag-and-drop-Daten aus einer anderen App oder innerhalb einer App akzeptieren und eine einheitliche Drop-Ziel-Affordanz anzeigen. |
| drawerlayout | Implementieren Sie ein Drawer-Widget im Material Design. |
| dynamicanimation | Mit einer physikbasierten Animations-API flüssige Animationen erstellen |
| emoji | Emojis auf aktuellen und älteren Geräten anzeigen. |
| emoji2 | Emojis auf aktuellen und älteren Geräten anzeigen. |
| enterprise | Unternehmensgerechte Anwendungen erstellen |
| exifinterface | EXIF-Tags von Bilddateien lesen und schreiben. |
| Spiele | Verwenden Sie das Android Game SDK nativ in Ihrer App, um komplexe Aufgaben wie Frame Pacing auszuführen. |
| glance.adaptive | Aufgaben |
| Kurzübersicht | Layouts für Remote-Oberflächen mit einer API im Jetpack Compose-Stil erstellen. |
| glance.wear | Glance Wear ist eine Bibliothek zum Erstellen von Widgets für Wear OS. |
| Grafiken | Grafikfunktionen über mehrere Android-Plattformversionen hinweg nutzen |
| gridlayout | Rasterlayout implementieren |
| gesundheit | Leistungsstarke Gesundheits-Apps plattformunabhängig erstellen |
| health.connect | Ermöglicht Entwicklern, Gesundheits- und Fitnessdaten von Nutzern zu lesen oder zu schreiben. |
| heifwriter | Codieren Sie ein Bild oder eine Bildersammlung im HEIF-Format mit den auf dem Android-Gerät verfügbaren Codecs. |
| Tinte | Erstklassige Stift-Apps entwickeln Niedrigere Einstiegshürde für Entwickler, um leistungsstarke, ansprechende Freihandfunktionen zu erstellen. Unterstützt Inking auf Android und serverseitiger JVM (derzeit auf Linux für x86_64 unterstützt). |
| input | Latenz von Eingabeinteraktionen durch Vorhersage zukünftiger MotionEvents reduzieren |
| interpolator | Verwenden Sie Animationsinterpolatoren auf älteren Plattformen. |
| javascriptengine | Aktivieren Sie Ihre Android-App, um JavaScript auszuwerten. |
| jetifier | Ein eigenständiges Tool, mit dem die Abhängigkeiten einer Bibliothek von der verworfenen Supportbibliothek zu entsprechenden AndroidX-Abhängigkeiten migriert werden. |
| Leanback | Ein eigenständiges Tool, mit dem die Abhängigkeiten einer Bibliothek von der eingestellten Support-Bibliothek zu entsprechenden AndroidX-Abhängigkeiten migriert werden. |
| legacy | Dieses Artefakt und die zugehörigen Klassen wurden eingestellt. Ab Android 8 ist diese Klasse aufgrund von Einschränkungen bei der Hintergrundprüfung nicht mehr nützlich. |
| lint | Lint-Prüfungen zur Überprüfung der Nutzung von Gradle APIs |
| Loader | Daten für die Benutzeroberfläche laden, die Konfigurationsänderungen überstehen |
| localbroadcastmanager | Dieses Artefakt und die zugehörigen Klassen wurden eingestellt. Verwenden Sie stattdessen LiveData oder reaktive Streams. |
| media | Medieninhalte und Steuerelemente mit anderen Apps teilen Durch Media3 ersetzt. |
| media3 * | Supportbibliotheken für Medienanwendungsfälle |
| mediarouter | Anzeige und Wiedergabe von Medien auf Remote-Empfängergeräten über eine gemeinsame Benutzeroberfläche ermöglichen |
| multidex | Anwendungen mit mehreren DEX-Dateien auf Geräten vor Android 5 bereitstellen |
| metrics | Verschiedene Laufzeitmesswerte für Ihre Anwendung erfassen und melden |
| navigation3 | Navigation 3 ist eine neue Navigationsbibliothek, die für die Verwendung mit Compose entwickelt wurde. |
| navigationevent | Die Navigationsereignis-Bibliothek bietet eine KMP-basierte API für die Verarbeitung von System-Zurück-Vorgängen sowie [intelligente „Zurück“-Geste](/guide/navigation/custom-back/predictive-back-gesture). |
| Palette | Repräsentative Farbpaletten aus Bildern extrahieren |
| Eine Bibliothek, mit der Apps um PDF-Anzeigefunktionen erweitert werden können. | |
| percentlayout | Dieses Artefakt und die zugehörigen Klassen wurden eingestellt. Verwenden Sie stattdessen ConstraintLayout und zugehörige Layouts. |
| Leistung als bei bisherigen Pixel-Modellen | Stellt Quellanmerkungen für Leistungsoptimierungen bereit. |
| photopicker | Diese Bibliothek bietet eine Integration für Compose und Android-Views für die eingebettete Bildauswahl. |
| preference | Du kannst interaktive Einstellungsbildschirme erstellen, ohne mit dem Gerätespeicher interagieren oder die Benutzeroberfläche verwalten zu müssen. |
| Fotos, Dokumente und andere Grafiken und Bilder aus Ihrer App drucken. | |
| privacysandbox.activity | Aufgaben |
| privacysandbox.ads | Diese Bibliothek ermöglicht die Einbindung von datenschutzfreundlichen APIs, die Teil der Privacy Sandbox für Android sind. |
| privacysandbox.plugins | Android Privacy Sandbox SDK Library Gradle-Plug-in |
| privacysandbox.sdkruntime | Diese Bibliothek bietet Komponenten für SdkRuntime-fähige Nutzer |
| privacysandbox.tools | Eine Bibliothek zur Nutzung der Privacy Sandbox-Funktionen in Android |
| privacysandbox.ui | Aufgaben |
| profileinstaller | Ermöglicht es Bibliotheken, vorab Kompilierungstraces zu erstellen, die von ART gelesen werden können. |
| recommendation | Inhalte auf dem Startbildschirm des Android TV-Launchers bewerben. |
| recyclerview | Große Datenmengen in der Benutzeroberfläche anzeigen und gleichzeitig die Arbeitsspeichernutzung minimieren. |
| remotecallback | Erstellen Sie einen Wrapper, der es Entwicklern erleichtert, ein PendingIntent bereitzustellen. |
| resourceinspection | Attribute benutzerdefinierter Ansichten im Live Layout Inspector von Android Studio anzeigen |
| savedstate | Schreiben Sie Plug-in-Komponenten, die den UI-Status speichern, wenn ein Prozess beendet wird, und ihn wiederherstellen, wenn der Prozess neu gestartet wird. |
| Sicherheitschip | Schlüssel sicher verwalten und Dateien und Shared Preferences verschlüsseln. |
| sharetarget | Abwärtskompatibilität für die Verwendung von Verknüpfungen als Ziele für die direkte Freigabe bereitstellen. |
| slice | UI-Elemente mit Vorlagen außerhalb Ihrer App anzeigen |
| slidingpanelayout | Implementieren Sie ein UI-Muster für einen Schiebebereich. |
| startup | Implementieren Sie eine einfache, leistungsstarke Methode, um Komponenten beim Start der App zu initialisieren. |
| sqlite | Mit lokalen SQLite-Datenbanken arbeiten Verwenden Sie nach Möglichkeit stattdessen Room. |
| swiperefreshlayout | Implementieren Sie das UI-Muster „Zum Aktualisieren wischen“. |
| test.backup | Automatisiertes Testframework, um zu prüfen, ob Nutzerdaten und Anmeldedaten bei Geräte-Upgrades und Cloud-Wiederherstellungen sicher erhalten bleiben. |
| test.ext | Aufgaben |
| test.uiautomator | Framework für appübergreifende funktionale UI-Tests |
| text-vertical | Aufgaben |
| textclassifier | Erkennt Unterhaltungen, Links, Auswahlen und ähnliche Konstrukte im Text. |
| Tracing | Trace-Ereignisse in den System-Trace-Zwischenspeicher schreiben. |
| transition | Bewegungen in der Benutzeroberfläche mit Start- und Endlayouts animieren. |
| tv | Bietet Entwicklern Compose- und Material Design-Funktionen zum Schreiben von Anwendungen für Fernseher |
| tvprovider | Android TV-Kanäle bereitstellen |
| vectordrawable | Vektorgrafiken rendern |
| versionedparcelable | Bietet ein stabiles und kompaktes binäres Serialisierungsformat, das prozessübergreifend übergeben oder sicher beibehalten werden kann. |
| viewpager | Views oder Fragmente in einem wischbaren Format anzeigen Verwenden Sie nach Möglichkeit „viewpager2“ anstelle von „viewpager“. |
| viewpager2 | Ansichten oder Fragmente in einem wischbaren Format anzeigen. |
| wear | Anwendungen für Wear OS by Google-Smartwatches erstellen |
| wear.compose | Sie können Jetpack Compose-Anwendungen für Wear OS-Geräte schreiben, indem Sie Funktionen zur Unterstützung verschiedener Gerätegrößen und Navigationsgesten bereitstellen. |
| wear.compose.remote | Mit dem Expressive-Designsystem von Material 3 können Sie Widgets und andere Remote-UIs für Wear OS erstellen. |
| wear.protolayout | Mit dieser Bibliothek können Sie eine Reihe von UI-Layouts und Nicht-UI-Ausdrücken definieren, die auf Remote-Oberflächen gerendert/ausgewertet werden sollen. |
| wear.tiles | Apps für Wear OS by Google-Smartwatches erstellen |
| wear.watchface | Anwendungen für Wear OS by Google-Smartwatches erstellen |
| wear.watchfacepush | Mit Watch Face Push kann eine Wear OS-App ein Zifferblatt programmatisch auf einer Smartwatch installieren. |
| webgpu | Eine moderne GPU API für Grafik und Computing von Kotlin. |
| webkit | Moderne WebView-APIs unter Android 5 und höher verwenden |
| window | Unterstützt verschiedene Geräteformfaktoren, z. B. faltbare Geräte. |
| window.extensions.core | Die Core-APIs für Window Manager Library Extensions |
| xr.arcore | Mit Wahrnehmungsfunktionen können Sie digitale Inhalte in die reale Welt einbinden. |
| xr.compose | Räumliche UI-Layouts lassen sich deklarativ erstellen und die räumlichen Funktionen von Android XR nutzen. |
| xr.compose.material3 | Mit Material-Komponenten und ‑Layouts entwickeln, die sich für XR anpassen |
| xr.glimmer | Designsprache und UI-Toolkit zum Erstellen von Augmented Android XR-Erlebnissen |
| xr.projected | Entwickle Funktionen, die die einzigartigen Möglichkeiten verbundener XR-Geräte nutzen. |
| xr.runtime | Starten Sie Ihre benutzerdefinierte AR- oder 3D-Sitzung mit unserer nativen Laufzeitumgebung. |
| xr.scenecore | Mit 3D-Inhalten den Android XR-Szenengraphen erstellen und bearbeiten |