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 „Aktivität“ 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 * | Definieren Sie Ihre 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. |
| room * | Erstellen, speichern und verwalten Sie persistente Daten, die von einer SQLite-Datenbank unterstützt werden. |
| room3 * | Erstellen, speichern und verwalten Sie persistente Daten, die von einer SQLite-Datenbank unterstützt werden. |
| test * | Testen unter Android |
| work * | Planen und Ausführen von verschiebbaren, einschränkungsbasierten Hintergrundaufgaben. |
| a2ui | 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. |
| 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 | Hilfsprogramm 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 | Verbessern Sie die Genauigkeit des Autofills, indem Sie Hinweise erweitern. |
| benchmark | Die Leistung Ihres Codes in Android Studio genau messen |
| biometric | Authentifizierung mit biometrischen Daten oder Geräteanmeldedaten und Ausführung kryptografischer Vorgänge. |
| 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 | Erstellen Sie Jetpack Compose-UIs mit Material Design 3-Komponenten, der nächsten Entwicklungsstufe von Material Design. Material 3 umfasst aktualisierte Designs und Komponenten sowie Personalisierungsfunktionen von Material You 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 Standard-Scaffold-Implementierungen und Baustein-Kompositionen, mit denen Sie Ihre eigenen benutzerdefinierten Oberflächen 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. |
| concurrent | 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 Anwendungs-Widgets auf oberster Ebene, z. B. AppBarLayout und FloatingActionButton. |
| locationbutton | |
| core | Du kannst die neuesten Plattformfunktionen und APIs nutzen und gleichzeitig ältere Geräte unterstützen. |
| core.uwb | UWB (Ultrabreitband) auf unterstützten Geräten implementieren |
| credentials | Diese Bibliothek bietet einheitlichen Zugriff auf die Anmeldedaten eines Nutzers. Dazu gehören Passwörter, Passkeys und föderierte Anmeldedaten. Diese Bibliothek sollte verwendet werden, um eine nahtlose und sichere Anmeldung zu ermöglichen. |
| credentials.providerevents | Diese Bibliothek bietet eine Reihe von APIs, mit denen Anbieter von Anmeldedaten an Anbieterereignissen wie der Übertragung von Anmeldedaten und der Signalisierung von Änderungen an Anmeldedaten teilnehmen können. |
| credentials.registry | Um diese Probleme zu beheben, fügen wir einen neuen Registrierungsmechanismus hinzu, mit dem eine App digitale Anmeldedaten auf datenschutzfreundliche Weise bereitstellen kann. Grob gesagt registriert die Anbieter-App alle ihre digitalen Ausweisdokumente vorab beim Credential Manager. Wenn der Credential Manager eine App-Anfrage für ein bestimmtes digitales Ausweisdokument erhält, führt er den Abgleich der Ausweisdokumente 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 und so einige der Nachteile von SharedPreferences überwinden |
| documentfile | Dateidokument 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 kannst du 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 |
| glance | Mit einer Jetpack Compose-ähnlichen API Layouts für Remote-Oberflächen erstellen. |
| glance.wear | Glance Wear ist eine Bibliothek zum Erstellen von Widgets für Wear OS. |
| Grafik | 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. |
| ink | Inspiration für erstklassige Stift-Apps Niedrigere Einstiegshürde für Entwickler, um leistungsstarke, ansprechende Freihandfunktionen zu erstellen. Unterstützt Freihandzeichnen auf Android und serverseitige JVM (derzeit unter 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 eingestellten Supportbibliothek zu entsprechenden AndroidX-Abhängigkeiten migriert werden. |
| leanback | Ein eigenständiges Tool, mit dem die Abhängigkeiten einer Bibliothek von der eingestellten Supportbibliothek zu entsprechenden AndroidX-Abhängigkeiten migriert werden. |
| legacy | Dieses Artefakt und seine 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 Verwendung von Gradle APIs |
| loader | Daten für die Benutzeroberfläche laden, die Konfigurationsänderungen überstehen. |
| localbroadcastmanager | Dieses Artefakt und seine 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 mit einer Android-Version 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 Navigation Event-Bibliothek bietet eine KMP-orientierte API für die Verarbeitung der System-Zurück-Geste sowie der [intelligenten „Zurück“-Geste](/guide/navigation/custom-back/predictive-back-gesture). |
| palette | Repräsentative Farbpaletten aus Bildern extrahieren. |
| Eine Bibliothek, mit der Apps PDF-Anzeigefunktionen hinzugefügt werden können. | |
| percentlayout | Dieses Artefakt und seine 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-Ansichten 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, Ahead-of-Time-Kompilierungs-Traces vorab zu füllen, damit sie von ART gelesen werden können. |
| Empfehlung | Inhalte auf dem Startbildschirm des Android TV-Launchers bewerben |
| recyclerview | Große Datenmengen in der Benutzeroberfläche anzeigen und gleichzeitig die Arbeitsspeichernutzung minimieren. |
| remotecallback | Erstelle einen Wrapper, der es Entwicklern erleichtert, einen PendingIntent bereitzustellen. |
| resourceinspection | Attribute benutzerdefinierter Ansichten im Live Layout Inspector von Android Studio anzeigen lassen |
| 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 „sharedpreferences“ verschlüsseln. |
| sharetarget | Abwärtskompatibilität für die Verwendung von Verknüpfungen als Ziele für die direkte Freigabe |
| slice | Vorlagenbasierte UI-Elemente außerhalb Ihrer App anzeigen. |
| slidingpanelayout | Implementieren Sie ein UI-Muster mit Schiebefenstern. |
| 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 | Automatisierte Test-Frameworks, mit denen überprüft wird, ob Nutzerdaten und Kontoanmeldedaten Geräteupgrades und Cloud-Wiederherstellungen sicher überstehen. |
| test.ext | Aufgaben |
| test.uiautomator | Framework für appübergreifende funktionale UI-Tests |
| text-vertical | Aufgaben |
| textclassifier | Identifiziert Unterhaltungen, Links, Auswahlen und andere ä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 | Ansichten oder Fragmente in einem wischbaren Format anzeigen. Verwende nach Möglichkeit stattdessen „viewpager2“. |
| viewpager2 | Ansichten oder Fragmente in einem wischbaren Format anzeigen. |
| wear | Anwendungen für Wear OS by Google-Smartwatches erstellen |
| wear.compose | 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 | Widgets und andere Remote-UIs für Wear OS mit dem Designsystem Material 3 Expressive 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 | Anwendungen 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ützung verschiedener Geräteformfaktoren, z. B. faltbare Geräte. |
| window.extensions.core | Die Core APIs für Window Manager-Bibliothekserweiterungen |
| xr.arcore | Mit Wahrnehmungsfunktionen können Sie digitale Inhalte in die reale Welt bringen. |
| xr.compose | Deklarativ räumliche UI-Layouts erstellen, die die räumlichen Funktionen von Android XR nutzen. |
| xr.compose.material3 | Mit Material-Komponenten und ‑Layouts entwickeln, die sich an XR anpassen |
| xr.glimmer | Designsprache und UI-Toolkit zum Erstellen von Augmented-Reality-Erlebnissen für Android XR |
| xr.projected | Entwickle Anwendungen, die die einzigartigen Funktionen von verbundenen XR-Geräten nutzen. |
| xr.runtime | Starten Sie Ihre benutzerdefinierte AR- oder 3D-Sitzung mit unserer nativen Laufzeit. |
| xr.scenecore | Android XR-Szenengraf mit 3D-Inhalten erstellen und bearbeiten |