Google verwendet KI-Technologie, um Inhalte in Ihre bevorzugte Sprache zu übersetzen. KI-Übersetzungen können Fehler enthalten.
Architektonische Schichtung und API-Benennung
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Der A2UI-Renderer für Jetpack Compose definiert eine mehrschichtige Architektur, mit der Sie die richtige Ebene für die Entwicklung auswählen können. Zusätzlich zur semantischen Schicht kommuniziert ein klares Benennungsschema die API-Absicht und steuert die Sichtbarkeit, um zu vermeiden, dass Ihr Klassenpfad mit unnötigen internen Typen überladen wird.
APIs werden basierend auf Anwendungsfall und Sichtbarkeit in zwei primäre Kategorien unterteilt:
- APIs für App- und Komponentenentwickler: Öffentliche APIs, die für die direkte Verwendung vorgesehen sind, haben klare, prägnante Namen mit dem Präfix
A2ui (oder Designsystem- und Testpräfixe wie MaterialA2ui und A2uiTest). Beispiele sind A2uiCatalog, A2uiComponent und A2uiException.
- APIs für Integratoren von UI-Frameworks: APIs, die von Bibliotheken verwendet werden, die die Core-Datenebene und UI-Frameworks überbrücken, haben beschreibende Namen mit dem Präfix
A2uiCore. Diese APIs sind nicht für den direkten Anwendungsbezug vorgesehen und bleiben für Standardanwendungscode verborgen.
Beispiele sind A2uiCoreCatalog, A2uiCoreDataModel und A2uiCoreSurfaceModel.
Da die Core-Datenebene Typen aus beiden Kategorien enthält, wird sie auf zwei separate Artefakte verteilt: androidx.a2ui:a2ui-model (für App-Entwickler) und androidx.a2ui:a2ui-engine (für Framework-Integratoren). Diese Struktur ermöglicht es Framework-Bibliotheken, a2ui-engine als Implementierungsabhängigkeit zu verwenden. Dadurch wird verhindert, dass A2uiCore-Typen öffentliche App-Klassenpfade beeinträchtigen.
Kategorie 1: App-Entwickler-APIs
In den folgenden Tabellen sind öffentliche APIs aufgeführt, die für Anwendungs- und Komponentenentwickler vorgesehen sind.
androidx.a2ui:a2ui-model
| Typ |
Beschreibung |
A2uiSurfaceModel |
Schreibgeschützte Schnittstelle, die eine UI-Oberfläche darstellt |
A2uiMessageProcessor |
Einstiegspunkt-Typ für die Verarbeitung eingehender Nachrichten |
A2uiMessageParser |
Parserschnittstelle für Protokollnachrichten |
A2uiServerToClientMessage |
Nutzlast eingehender Nachrichten |
A2uiSchema |
Typen zum Definieren von Schemas für Komponenten-Properties |
A2uiException |
Ausnahmen, die über Schichten hinweg ausgelöst und behandelt werden |
A2uiUserAction |
Aktions-Payload, die als Ergebnis von Nutzerinteraktionen erstellt wurde |
A2uiClientToServerMessage |
Basistyp für alle Nutzlasten ausgehender Nachrichten |
A2uiActionInterceptor |
Interceptor für Nutzeraktionen auf Data-Layer-Ebene |
A2uiFunctionDefinition |
Definition einer lokalen Clientfunktion |
A2uiDataPath |
Darstellung des JSON-Pointer-Pfads |
androidx.a2ui.compose:compose-runtime
| Typ |
Beschreibung |
a2uiRuntimeMessageProcessor |
Erweiterungskonstruktor für den Nachrichtenverarbeiter |
A2uiMessageParser |
Erweiterungskonstruktor für den Message-Parser |
A2uiComponentState |
Schnittstelle, die den reaktiven Komponentenstatus darstellt |
A2uiComponentModel |
Datenmodell für eine erfolgreich behobene Komponente |
A2uiComponentProperties |
Stabile Property-Container zur Optimierung von Neukompositionen |
A2uiProperty |
Stark typisierte Definition von Komponentenattributen |
A2uiComponentScope |
Empfängerbereich für die Auswertung von Bindungen und untergeordneten Komponenten |
A2uiComponentReference |
Zeiger zum Auflösen verschachtelter untergeordneter Komponenten |
androidx.a2ui.compose:compose-ui
| Typ |
Beschreibung |
A2uiCatalog |
Schnittstelle und Erweiterungskonstruktor zum Definieren von Katalogen |
A2uiComponent |
Schnittstelle zum Definieren von Compose-Komponentenimplementierungen |
A2uiComponent (zusammensetzbar) |
Composable-Funktion, die die Benutzeroberfläche für eine Komponente ausgibt |
androidx.compose.material3:material3-a2ui
| Typ |
Beschreibung |
A2uiSurface |
Zusammensetzbarer Einstiegspunkt, der eine Oberfläche rendert |
materialA2uiBasicCatalogV1 |
Factory-Funktion zum Erstellen einer Instanz des Basic Catalog, die Material 3-Komponenten verwendet |
MaterialA2uiBasicCatalogV1Defaults |
Standardmäßige Material 3-Implementierungen des einfachen Katalogs |
androidx.a2ui.compose:compose-ui-testing
| Typ |
Beschreibung |
A2uiTestController |
Testcontroller zur Orchestrierung der Testausführung |
A2uiComponentStub |
Stubbed- oder überschriebene Komponentenimplementierung |
A2uiTestSurface |
Zusammensetzbare Funktion, die eine Testoberfläche rendert |
Kategorie 2: APIs für Framework-Integratoren
In der folgenden Tabelle sind APIs aufgeführt, die für Framework-Integratoren vorgesehen sind.
androidx.a2ui:a2ui-engine
| Typ |
Beschreibung |
A2uiCoreCatalog |
Enthält eine Reihe von A2uiCoreComponentDefinition-Objekten. |
A2uiCoreCatalogSerializer |
Serialisierungsprogramm für A2UI-Kataloge |
A2uiCoreComponentDefinition |
Enthält Metadaten, die eine Komponente definieren |
A2uiCoreSurfaceModel |
Implementiert A2uiSurfaceModel, macht Registrierungen verfügbar |
A2uiCoreSurfaceGroupModel |
Implementiert A2uiSurfaceGroupModel |
A2uiCoreMessageProcessor |
Implementiert A2uiMessageProcessor |
A2uiCoreDataModel |
Inhaber des reaktiven Datenmodells |
A2uiCoreComponentRegistry |
Komponenten-Registry |
A2uiCoreValueResolver |
Data Accessor für die Verwendung im dynamischen Evaluator |
A2uiCoreSchemaValidator |
Komponentenschema-Validator |
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2026-09-24 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2026-09-24 (UTC)."],[],[]]