Jetpack Android
Jetpack è una suite di librerie che aiuta gli sviluppatori a seguire le best practice, ridurre il codice boilerplate e scrivere codice che funziona in modo coerente su tutte le versioni e i dispositivi Android, in modo che gli sviluppatori possano concentrarsi sul codice di loro interesse.
Jetpack Compose
Sviluppa l'interfaccia utente con Scrivi
Un toolkit moderno per la creazione di UI native che ti consente di semplificare e accelerare lo sviluppo di UI su Android.
Perché utilizzare Android Jetpack?
Segui le best practice
Basate su pratiche di progettazione moderne, le librerie Jetpack di Android consentono un minor numero di arresti anomali e meno perdite di memoria grazie alla compatibilità con le versioni precedenti.
Elimina il codice boilerplate
Android Jetpack gestisce attività noiose come attività in background, navigazione e gestione del ciclo di vita, in modo che tu possa concentrarti su ciò che rende eccezionale la tua app.
Riduci la frammentazione
Riduci la complessità con librerie che funzionano in modo coerente su tutte le versioni e i dispositivi Android.
Librerie Jetpack Esplora tutte le librerie
* Le librerie più utilizzate e popolari sono elencate per prime
attività * | Accedi alle API componibili basate sull'attività. |
appcompat * | Consente l'accesso alle nuove API sulle versioni precedenti dell'API della piattaforma (molte delle quali utilizzano Material Design). |
appsearch * | Crea funzionalità di ricerca in-app personalizzate per i tuoi utenti. |
da 64 MP * | Crea app per fotocamere mobile. |
scrivi * | Definisci l'interfaccia utente in modo programmatico con funzioni componibili che descrivono la sua forma e le dipendenze dei dati. |
databinding * | Collega i componenti dell'interfaccia utente nei layout alle origini dati nell'app utilizzando un formato dichiarativo. |
fragment * | Segmenta l'app in più schermate indipendenti ospitate all'interno di un'attività. |
hilt * | Estendi la funzionalità di Dagger Hilt per consentire l'inserimento delle dipendenze di determinate classi dalle librerie Androidx. |
ciclo di vita * | Crea componenti sensibili al ciclo di vita in grado di regolare il comportamento in base allo stato attuale del ciclo di vita di un'attività o di un frammento. |
Componenti di Material Design * | Componenti UI Material Design modulari e personalizzabili per Android. |
navigazione * | Crea e struttura la tua UI in-app, gestisci i link diretti e naviga tra le schermate. |
paginazione * | Carica i dati in pagine e presentali in un RecyclerView. |
room * | Crea, archivia e gestisci dati permanenti supportati da un database SQLite. |
test * | Test in Android. |
lavoro * | Pianifica ed esegui attività in background rinviabili e basate su vincoli. |
annunci | Ricevere un ID pubblicità con o senza Play Services. |
annotazione | Esponi metadati che aiutano gli strumenti e gli altri sviluppatori a comprendere il codice della tua app. |
arch.core | Helper per altre dipendenze dell'architettura, incluse le regole di test JUnit che possono essere utilizzate con LiveData. |
asynclayoutinflater | Infla i layout in modo asincrono per evitare scatti nell'interfaccia utente. |
compilazione automatica | Migliora la precisione della compilazione automatica estendendo i suggerimenti. |
benchmark | Misura con precisione le prestazioni del codice in Android Studio. |
biometrico | Effettua l'autenticazione con la biometria o le credenziali del dispositivo ed esegui operazioni crittografiche. |
bluetooth | Usa le funzionalità Bluetooth della piattaforma Android con API compatibili con le versioni precedenti. |
browser | Mostrare le pagine web nel browser predefinito dell'utente. |
camera.viewfinder | Mirino componibile e mirino per fotocamera autonomo" |
car-app | Crea app basate su modelli per Android Auto e Android Automotive OS. |
visualizzazione schede | Implementa il pattern della scheda Material Design con angoli arrotondati e ombre. |
collezione | Riduci l'impatto sulla memoria delle collezioni nuove ed esistenti di piccole dimensioni. |
compose.animation | Sviluppa animazioni nelle applicazioni Jetpack Compose per arricchire l'esperienza utente. |
compose.compiler | Trasforma le funzioni @Composable e abilita le ottimizzazioni con un plug-in del compilatore Kotlin. |
compose.foundation | Scrivi applicazioni Jetpack Compose con componenti di base pronti all'uso ed estende le basi per creare i tuoi componenti di sistema di progettazione. |
compose.material | Crea interfacce utente Jetpack Compose con componenti Material Design pronti all'uso. Si tratta del punto di ingresso di livello superiore di Compose, progettato per fornire componenti corrispondenti a quelli descritti all'indirizzo www.material.io. |
compose.material3 | Crea UI di Jetpack Compose con Material Design 3 Components, la prossima evoluzione di Material Design. Material 3 include temi e componenti aggiornati e funzionalità di personalizzazione di Material You come i colori dinamici ed è progettato per essere coerente con il nuovo stile visivo e l'interfaccia utente di sistema di Android 12. |
compose.material3.adaptive | Utilizzare la libreria adattiva di Material 3 per creare interfacce utente adattive che si adattano automaticamente in base alla finestra attuale come le classi di dimensioni delle finestre o le posizioni dei dispositivi. La libreria fornisce sia implementazioni di scaffold predefinite che i necessari componenti di base componibili per creare esperienze personalizzate. |
compose.runtime | Componenti di base di base del modello di programmazione e della gestione dello stato di Compose, nonché del runtime principale per il targeting del plug-in Compose Compiler. |
compose.ui | Componenti fondamentali dell'interfaccia utente di composizione necessari per interagire con il dispositivo, inclusi layout, disegno e input. |
concurrent | Sposta le attività fuori dal thread principale con le coroutine e sfrutta ListenableFuture. |
constraintlayout | Posiziona e ridimensiona i widget in modo flessibile con il posizionamento relativo. |
contentpager | Carica e visualizza i dati di ContentProvider in un thread in background. |
coordinatorlayout | Posiziona i widget dell'applicazione di primo livello, come AppBarLayout e FloatingActionButton. |
di base | Scegli come target le funzionalità e le API della piattaforma più recenti supportando al contempo i dispositivi meno recenti. |
core.uwb | Implementa la tecnologia UWB (banda ultralarga) sui dispositivi supportati. |
credentials | Questa libreria fornisce l'accesso unificato alle credenziali di un utente. Possono essere incluse password, passkey e credenziali federate. Questa libreria deve essere utilizzata per offrire esperienze di accesso sicure e senza interruzioni. |
cursoradapter | Esponi i dati del cursore a un widget ListView. |
customview | Implementa visualizzazioni personalizzate. |
datastore | Archivia i dati in modo asincrono, coerente e transazionale, superando alcuni degli svantaggi di SharedPreferences |
documento | Visualizza un documento di un file. |
trascina | Accetta i dati drag and drop da un'altra app o all'interno di un'app e mostra un invito al target di calo coerente. |
drawerlayout | Implementare un widget del riquadro a scomparsa Material Design. |
Dynamicanimation | Crea animazioni fluide con un'API di animazione basata sulla fisica. |
emoji | Visualizza le emoji sui dispositivi attuali e meno recenti. |
emoji2 | Visualizza le emoji sui dispositivi attuali e meno recenti. |
azienda | Crea applicazioni di livello enterprise. |
interfaccia exif | Leggere e scrivere tag EXIF di file immagine. |
giochi | Utilizza l'SDK Android Game in modo nativo nella tua app per eseguire attività complesse nei giochi, come il pacing del frame. |
occhiata | Creare layout per piattaforme remote utilizzando un'API in stile Jetpack Compose. |
graphics | Sfrutta le funzionalità grafiche su più release della piattaforma Android |
gridlayout | Implementa un layout a griglia. |
salute | Creare applicazioni per la salute ad alte prestazioni in modo indipendente dalla piattaforma. |
health.connect | Consente agli sviluppatori di leggere o scrivere i dati relativi a salute e attività fisica dell'utente. |
heifwriter | Codifica un'immagine o una raccolta di immagini in formato HEIF utilizzando i codec disponibili sul dispositivo Android. |
ink | Creare app con penna di alta qualità. Riduci le barriere all'accesso degli sviluppatori per esperienze di inchiostro meravigliose e ad alte prestazioni. |
input | Riduci la latenza delle interazioni di input prevedendo eventi di movimento futuri |
interpolatore | Utilizza interpolatori di animazione sulle piattaforme meno recenti. |
javascriptengine | Attiva la tua app per Android per valutare JavaScript. |
jetifier | Uno strumento autonomo che esegue la migrazione delle dipendenze di una libreria dalla libreria di supporto deprecata alle dipendenze AndroidX equivalenti. |
schienale | Utilizza Compose per la TV al posto di questo artefatto. |
legacy | Questo elemento e i relativi classi sono deprecati. A partire da Android 8, le limitazioni relative al controllo dei precedenti rendono questo corso non più utile. |
lint | Controlli lint per verificare l'utilizzo delle API Gradle |
loader | Carica i dati per l'UI che sopravvivono alle modifiche di configurazione. |
localbroadcastmanager | Questo artefatto e le sue classi sono deprecati. Usa LiveData o stream reattivi. |
media | Condividi contenuti e controlli multimediali con altre app. Sostituito da media2. |
media2 | Condividi contenuti e controlli multimediali con altre app. |
media3 * | Supporta le librerie per i casi d'uso multimediali. |
mediarouter | Attiva la visualizzazione e la riproduzione di contenuti multimediali sui dispositivi ricevitori remoti utilizzando un'interfaccia utente comune. |
multidex | Esegui il deployment di applicazioni con più file dex su dispositivi precedenti ad Android 5. |
metriche | Monitorare e generare report su varie metriche di runtime per la tua applicazione |
palette | Estrarre tavolozze dei colori rappresentativi dalle immagini. |
Una libreria per aggiungere funzionalità di visualizzazione di PDF all'interno delle app. | |
percentlayout | Questo artefatto e le sue classi sono deprecati. Utilizza invece ConstraintLayout e i layout associati. |
preference | Crea schermate di impostazioni interattive senza dover interagire con lo spazio di archiviazione del dispositivo o gestire l'interfaccia utente. |
stampare | Stampa foto, documenti e altri elementi grafici e immagini dalla tua app. |
privacysandbox.activity | DA FARE |
privacysandbox.ads | Questa libreria consente l'integrazione con le API incentrate sulla tutela della privacy, che fanno parte di Privacy Sandbox su Android. |
privacysandbox.plugins | Plug-in Gradle della libreria Sdk Privacy Sandbox di Android |
privacysandbox.sdkruntime | Questa libreria fornisce componenti per i consumatori SdkRuntime consapevoli |
privacysandbox.tools | Una libreria per utilizzare la funzionalità Privacy Sandbox in Android |
privacysandbox.ui | DA FARE |
profileinstallatore | Consente alle librerie di precompilare in anticipo le tracce di compilazione da leggere da ART. |
consiglio | Promuovi i contenuti nella schermata Home di Avvio app di Android TV. |
recyclerview | Visualizza grandi set di dati nell'interfaccia utente riducendo al minimo l'utilizzo della memoria. |
richiamata remota | Crea un wrapper che consenta agli sviluppatori di fornire più facilmente un PendingIntent. |
resourceinspection | Mostra gli attributi delle visualizzazioni personalizzate nello strumento Live Layout Inspector di Android Studio. |
savedstate | Scrivi componenti plug-in che salvano lo stato dell'interfaccia utente quando un processo termina e lo ripristinano al riavvio del processo. |
Gestisci le chiavi in modo sicuro e cripta file e preferenze condivise. | |
sharetarget | Fornisci la compatibilità con le versioni precedenti per l'utilizzo delle scorciatoie come destinazioni della condivisione diretta. |
fetta | Mostra gli elementi UI basati su modelli al di fuori dell'app. |
layout a scorrimento scorrevole | Implementa un pattern UI con riquadro scorrevole. |
startup | Implementa un modo semplice e ad alte prestazioni per inizializzare i componenti all'avvio dell'app. |
sqlite | Utilizza i database SQLite locali. Se possibile, utilizza la stanza virtuale. |
swiperefreshlayout | Implementa il pattern dell'interfaccia utente con scorrimento per aggiornare. |
test.uiautomator | Framework per i test di UI funzionali tra app |
classificatore di testo | Identifica conversazioni, link, selezioni e altri costrutti simili nel testo. |
tracciamento | Scrivere gli eventi di traccia nel buffer di traccia di sistema. |
transizione | Anima il movimento nell'interfaccia utente con layout iniziale e finale. |
tv | Fornisce agli sviluppatori le funzionalità di Compose e Material Design per scrivere applicazioni per la TV |
fornitore TV | Fornire canali Android TV. |
vectordrawable | Esegui il rendering di immagini vettoriali. |
versionedParcelable | Fornisce un formato di serializzazione binario stabile e compatto che può essere trasmesso tra i processi o mantenuto in modo sicuro. |
viewpager | Visualizza le visualizzazioni o i frammenti in un formato scorrevole. Se possibile, utilizza viewpager2. |
viewpager2 | Visualizza viste o frammenti in formato a scorrimento. |
wear | Crea applicazioni per smartwatch Wear OS by Google. |
wear.compose | Scrivi applicazioni Jetpack Compose per dispositivi indossabili tramite che forniscono funzionalità per supportare dispositivi indossabili, dimensioni, forme e gesti di navigazione. |
wear.protolayout | Questa libreria consente di definire un insieme di layout dell'interfaccia utente ed espressioni non UI da eseguire in rendering/valutazione su piattaforme remote. |
wear.tiles | Creare applicazioni per smartwatch Wear OS by Google. |
wear.watchface | Crea applicazioni per smartwatch Wear OS by Google. |
webkit | Utilizza le API WebView moderne su Android 5 e versioni successive. |
window | Aiuta a supportare diversi fattori di forma dei dispositivi, ad esempio i dispositivi pieghevoli. |
window.extensions.core | API Core per le estensioni della libreria di Window Manager |
Novità
- Composizione agosto 2023
- Jetpack Compose 1.5.0 passa alla versione stabile e apporta importanti miglioramenti delle prestazioni, tra cui il refactoring di modificatori di alto livello come "Clickable", che può migliorare il tempo di composizione dell'80%. Compose di agosto 2023 migliora anche fino al 70% nell'allocazione della memoria (in particolare nello stack grafico), riducendo così l'ingombro della memoria per la scrittura sui dispositivi.
- Wear Compose e riquadri 1.2
- Sia Wear Compose che i riquadri Wear sono stati trasferiti alla versione stabile per migliorare ulteriormente l'esperienza degli sviluppatori wearOS. Entrambi sono complementari: Wear Compose può essere utilizzato per creare schermate di app complesse sui dispositivi Wear e i riquadri Wear possono essere utilizzati per creare i riquadri delle app. La nuova release Wear Compose contiene nuove funzionalità come elementi espandibili e Scorrimento per rivelare i contenuti. La release Wear Tiles ora supporta anche l'animazione dei widget e l'associazione di dati della piattaforma (come l'origine dati sulla salute).
- Finestra 1.1
- 1.1 stabilizza le API di incorporamento delle attività, consentendo ad app come WhatsApp, eBay e Temu di offrire layout con schermi di grandi dimensioni. L'API è arricchita di funzionalità, in quanto consente agli sviluppatori di modificare il comportamento dello schermo diviso, controllare (e modificare) lo stato della divisione in fase di esecuzione, implementare le suddivisioni orizzontali e avviare una finestra modale a schermo intero.
- Note di rilascio
- Per ulteriori informazioni, consulta le nostre note di rilascio.
Impara a utilizzare Jetpack
Formazione sui concetti fondamentali
Scopri le librerie Jetpack essenziali nel corso Nozioni di base di Android con il corso Compose e riduci il boilerplate nella tua app
Tutorial pratico
Fai pratica con tre librerie Jetpack che semplificano il tuo livello dati: LiveData, ViewModel e Room
App di esempio girasole
Scopri come le librerie Jetpack più popolari vengono utilizzate insieme in un'app a livello di produzione