Google utilizza la tecnologia AI per tradurre i contenuti nella tua lingua preferita. Le traduzioni generate dall'AI potrebbero contenere errori.
Livelli architetturali e denominazione delle API
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Il renderer A2UI di Jetpack Compose definisce un'architettura a livelli che ti consente di
scegliere il livello giusto su cui basarti. Oltre al layering semantico, uno schema di denominazione chiaro comunica l'intento dell'API e controlla la visibilità per evitare di contaminare il classpath con tipi interni non necessari.
Le API sono organizzate in due categorie principali in base al caso d'uso e alla visibilità:
- API per sviluppatori di app e componenti: le API pubbliche destinate all'uso diretto hanno nomi puliti e concisi con il prefisso
A2ui (o prefissi di sistema di progettazione e test come MaterialA2ui e A2uiTest).
Esempi includono A2uiCatalog, A2uiComponent e A2uiException.
- API per gli integratori di framework UI: le API utilizzate dalle librerie che collegano il livello di dati principale e i framework UI hanno nomi descrittivi con il prefisso
A2uiCore. Queste API non sono destinate al riferimento diretto alle applicazioni e
rimangono nascoste al codice dell'applicazione standard.
Esempi includono A2uiCoreCatalog, A2uiCoreDataModel e
A2uiCoreSurfaceModel.
Poiché il livello di dati principale contiene tipi di entrambe le categorie, è distribuito in due artefatti separati: androidx.a2ui:a2ui-model (per gli sviluppatori di app) e androidx.a2ui:a2ui-engine (per gli integratori di framework). Questa
struttura consente alle librerie del framework di dipendere da a2ui-engine come
dipendenza di implementazione, impedendo ai tipi A2uiCore di contaminare i classpath
pubblici delle app.
Categoria 1: API per sviluppatori di app
Le tabelle seguenti elencano le API pubbliche destinate agli sviluppatori di applicazioni e componenti.
androidx.a2ui:a2ui-model
| Tipo |
Descrizione |
A2uiSurfaceModel |
Interfaccia di sola lettura che rappresenta una superficie della UI |
A2uiMessageProcessor |
Tipo di punto di ingresso per l'elaborazione dei messaggi in arrivo |
A2uiMessageParser |
Interfaccia del parser per i messaggi di protocollo |
A2uiServerToClientMessage |
Payload del messaggio in arrivo |
A2uiSchema |
Tipi utilizzati per definire gli schemi delle proprietà dei componenti |
A2uiException |
Eccezioni generate e gestite nei vari livelli |
A2uiUserAction |
Payload dell'azione creato in seguito alle interazioni dell'utente |
A2uiClientToServerMessage |
Tipo di base per tutti i payload dei messaggi in uscita |
A2uiActionInterceptor |
Intercettatore di azioni utente a livello di data layer |
A2uiFunctionDefinition |
Definizione di una funzione client locale |
A2uiDataPath |
Rappresentazione del percorso del puntatore JSON |
androidx.a2ui.compose:compose-runtime
| Tipo |
Descrizione |
a2uiRuntimeMessageProcessor |
Costruttore di estensioni per il processore di messaggi |
A2uiMessageParser |
Costruttore di estensioni per il parser dei messaggi |
A2uiComponentState |
Interfaccia che rappresenta lo stato del componente reattivo |
A2uiComponentModel |
Modello di dati per un componente risolto correttamente |
A2uiComponentProperties |
Ricompilazioni ottimizzate del contenitore delle proprietà stabili |
A2uiProperty |
Definizione della proprietà del componente fortemente tipizzata |
A2uiComponentScope |
Ambito del destinatario per la valutazione dei binding e dei componenti secondari |
A2uiComponentReference |
Puntatore per risolvere i componenti secondari nidificati |
androidx.a2ui.compose:compose-ui
| Tipo |
Descrizione |
A2uiCatalog |
Interfaccia e costruttore di estensioni per definire i cataloghi |
A2uiComponent |
Interfaccia per definire le implementazioni dei componenti Compose |
A2uiComponent (componibile) |
Funzione componibile che genera l'UI per un componente |
androidx.compose.material3:material3-a2ui
| Tipo |
Descrizione |
A2uiSurface |
Punto di accesso componibile che esegue il rendering di una superficie |
materialA2uiBasicCatalogV1 |
Funzione di fabbrica per la creazione di un'istanza del catalogo di base che utilizza i componenti di Material 3 |
MaterialA2uiBasicCatalogV1Defaults |
Implementazioni predefinite di Material 3 del catalogo di base |
androidx.a2ui.compose:compose-ui-testing
| Tipo |
Descrizione |
A2uiTestController |
Controller di test per l'orchestrazione dell'esecuzione dei test |
A2uiComponentStub |
Implementazione di componenti stubbed o sottoposti a override |
A2uiTestSurface |
Funzione componibile che esegue il rendering di una superficie di test |
Categoria 2: API di integrazione del framework
La tabella seguente elenca le API destinate agli integratori di framework.
androidx.a2ui:a2ui-engine
| Tipo |
Descrizione |
A2uiCoreCatalog |
Contiene un insieme di oggetti A2uiCoreComponentDefinition |
A2uiCoreCatalogSerializer |
Serializer per i cataloghi A2UI |
A2uiCoreComponentDefinition |
Contiene metadati che definiscono un componente |
A2uiCoreSurfaceModel |
Implementa A2uiSurfaceModel, espone i registri |
A2uiCoreSurfaceGroupModel |
Implementa A2uiSurfaceGroupModel |
A2uiCoreMessageProcessor |
Implementa A2uiMessageProcessor |
A2uiCoreDataModel |
Titolare del modello di dati reattivo |
A2uiCoreComponentRegistry |
Component Registry |
A2uiCoreValueResolver |
Accessore ai dati da utilizzare nel valutatore dinamico |
A2uiCoreSchemaValidator |
Strumento di convalida dello schema dei componenti |
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2026-09-24 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2026-09-24 UTC."],[],[]]