Attività
| Ultimo aggiornamento | Release stabile | Candidato per la release | Release beta | Release alpha | 
|---|---|---|---|---|
| 22 ottobre 2025 | 1.11.0 | - | 1.12.0-beta01 | - | 
Dichiara le dipendenze
Per aggiungere una dipendenza da Activity, devi aggiungere il repository Maven di Google al tuo progetto. Per saperne di più, consulta il repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per
la tua app o il tuo modulo:
Alla moda
dependencies { def activity_version = "1.11.0" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
Kotlin
dependencies { val activity_version = "1.11.0" // Java language implementation implementation("androidx.activity:activity:$activity_version") // Kotlin implementation("androidx.activity:activity-ktx:$activity_version") }
Per saperne di più sulle dipendenze, consulta Aggiungi dipendenze di build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa libreria. Prima di segnalare un nuovo problema, dai un'occhiata ai problemi esistenti in questa raccolta. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Versione 1.12
Versione 1.12.0-beta01
22 ottobre 2025
androidx.activity:activity:1.12.0-beta01, androidx.activity:activity-compose:1.12.0-beta01 e androidx.activity:activity-ktx:1.12.0-beta01 sono stati rilasciati. La versione 1.12.0-beta01 contiene questi commit.
Modifiche alle API
- Introduzione dell'API ActivityFlagssperimentale per la gestione delle modifiche e delle migrazioni del comportamento di runtime. Il primo flag attiva l'ordinamento stabile perOnBackPressedCallback, rendendo la navigazione indietro più prevedibile in caso di modifiche del ciclo di vita. Gli sviluppatori possono disattivare la funzionalità impostandoActivityFlags.isOnBackPressedLifecycleOrderMaintained = false. (I06bdf, Id08bb, I439aa, b/422730945, b/450533622)
Aggiornamento delle dipendenze
- Aggiorna le dipendenze del ciclo di vita alla versione 2.9.4 (Ic9fb2)
Versione 1.12.0-alpha09
24 settembre 2025
androidx.activity:activity:1.12.0-alpha09, androidx.activity:activity-compose:1.12.0-alpha09 e androidx.activity:activity-ktx:1.12.0-alpha09 sono stati rilasciati. La versione 1.12.0-alpha09 contiene questi commit.
Modifiche alle dipendenze
- L'attività ora dipende da Evento di navigazione 1.0.0-alpha08.
Versione 1.12.0-alpha08
10 settembre 2025
androidx.activity:activity:1.12.0-alpha08, androidx.activity:activity-compose:1.12.0-alpha08 e androidx.activity:activity-ktx:1.12.0-alpha08 sono stati rilasciati. La versione 1.12.0-alpha08 contiene questi commit.
Aggiornamento delle dipendenze
- L'attività ora dipende da Evento di navigazione 1.0.0-alpha08.
Versione 1.12.0-alpha07
27 agosto 2025
androidx.activity:activity:1.12.0-alpha07, androidx.activity:activity-compose:1.12.0-alpha07 e androidx.activity:activity-ktx:1.12.0-alpha07 sono stati rilasciati. La versione 1.12.0-alpha07 contiene questi commit.
Correzioni di bug
- È stato risolto un problema relativo a EdgeToEdgenell'API 35 in cui le visualizzazioni invisibili causavano inset di misurazione imprevisti. (If49ff)
Aggiornamento delle dipendenze
- L'attività ora dipende da Evento di navigazione 1.0.0-alpha07.
Versione 1.12.0-alpha06
13 agosto 2025
androidx.activity:activity:1.12.0-alpha06, androidx.activity:activity-compose:1.12.0-alpha06 e androidx.activity:activity-ktx:1.12.0-alpha06 sono stati rilasciati. La versione 1.12.0-alpha06 contiene questi commit.
Aggiornamento di MinSdk
- Il minSdkpredefinito per AndroidX è stato spostato dall'API 21 all'API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
Aggiornamenti della documentazione
- Documentazione KDocs aggiornata per PredictiveBackHandlerper segnalare un problema di sincronizzazione noto in cui potrebbe elaborare un gesto nello stesso frame in cui è disattivato. (I5be5c, b/431534103)
- Documentazione KDocs aggiornata per BackHandlerePredictiveBackHandlerper indicare esplicitamente il comportamento "vince l'ultima composizione", oltre a consigliare la composizione incondizionata con il flagenabled. (I7ab94)
Aggiornamento delle dipendenze
- L'attività ora dipende da Evento di navigazione 1.0.0-alpha06.
Versione 1.12.0-alpha05
30 luglio 2025
androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05 e androidx.activity:activity-ktx:1.12.0-alpha05 sono stati rilasciati. La versione 1.12.0-alpha05 contiene questi commit.
Aggiornamento delle dipendenze
- L'attività ora dipende da Evento di navigazione 1.0.0-alpha05.
Versione 1.12.0-alpha04
2 luglio 2025
androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04 e androidx.activity:activity-ktx:1.12.0-alpha04 sono stati rilasciati. La versione 1.12.0-alpha04 contiene questi commit.
Modifiche alle dipendenze
- L'attività ora dipende da NavigationEvent Alpha04
Versione 1.12.0-alpha03
18 giugno 2025
androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03 e androidx.activity:activity-ktx:1.12.0-alpha03 sono stati rilasciati. La versione 1.12.0-alpha03 contiene questi commit.
Correzioni di bug
- OnBackPressedDispatchere- NavigationEventDispatcherora vengono inizializzati in modo differito in- ComponentActivity. (I710e6)
- Sono stati risolti problemi relativi a - OnBackPressedDistpatcherche causavano quanto segue:- Solo l'ultimo dispatcher OnBackPressedCallbackè stato aggiunto per ricevere notifiche sul suo stato di attivazione (b/418715930)
- OnBackPressedDispatcherrimuove il callback errato quando si utilizza la funzione- addCallbackche accetta un ciclo di vita. (b/422714753)
- OnBackPressedDispatcher.remove()non rimuove tutte le istanze di un- OnBackPressedCallbackregistrato. (b/423024414)
 
- Solo l'ultimo dispatcher 
Versione 1.12.0-alpha02
4 giugno 2025
androidx.activity:activity:1.12.0-alpha02, androidx.activity:activity-compose:1.12.0-alpha02 e androidx.activity:activity-ktx:1.12.0-alpha02 sono stati rilasciati. La versione 1.12.0-alpha02 contiene questi commit.
Correzioni di bug
- Da NavigationEvent 1.0.0-alpha02: è stato corretto unConcurrentModificationExceptionche poteva verificarsi quando veniva chiamatoNavigationEventCallback.remove()a causa della modifica simultanea dell'elenco interno degli elementi chiudibili. (I63066)
Versione 1.12.0-alpha01
20 maggio 2025
androidx.activity:activity:1.12.0-alpha01, androidx.activity:activity-compose:1.12.0-alpha01 e androidx.activity:activity-ktx:1.12.0-alpha01 sono stati rilasciati. La versione 1.12.0-alpha01 contiene questi commit.
Nuove funzionalità
- ComponentActivitye- ComponentDialogsono stati integrati con NavigationEvent- 1.0.0-alpha01tramite l'API- NavigationEventDispatcherOwner. Ora puoi recuperare un- NavigationEventDispatcherdal tuo- ComponentActivitytramite il campo- navigationEventDispatcher. Poiché- OnBackPressedDispatcherè stato riscritto sulla base della nuova libreria, tutti gli utilizzi precedenti dovrebbero continuare a funzionare correttamente. In futuro, dovresti utilizzare- NavigationEventDispatchere- NavigationEventCallback. (Ib8eed, I6cc44, Ib7724, I9a0f7,b/412597031, b/415028038, b/412596729, b/412597140, b/412596012)
Versione 1.11
Versione 1.11.0
10 settembre 2025
androidx.activity:activity:1.11.0, androidx.activity:activity-compose:1.11.0 e androidx.activity:activity-ktx:1.11.0 sono stati rilasciati. La versione 1.11.0 contiene questi commit.
Modifiche importanti dalla versione 1.10.0:
- È stata aggiunta l'API MediaCapabilitiesaPickVisualMediaRequestper consentire alle applicazioni di specificare le proprie funzionalità multimediali, ad esempio i tipi di HDR supportati.
- L'attività ora viene compilata con l'API 36.
Versione 1.11.0-rc01
23 aprile 2025
androidx.activity:activity:1.11.0-rc01, androidx.activity:activity-compose:1.11.0-rc01 e androidx.activity:activity-ktx:1.11.0-rc01 sono stati rilasciati. La versione 1.11.0-rc01 contiene questi commit.
Versione 1.11.0-beta01
9 aprile 2025
androidx.activity:activity:1.11.0-beta01, androidx.activity:activity-compose:1.11.0-beta01 e androidx.activity:activity-ktx:1.11.0-beta01 sono stati rilasciati. La versione 1.11.0-beta01 contiene questi commit.
Versione 1.11.0-alpha02
26 marzo 2025
androidx.activity:activity:1.11.0-alpha02, androidx.activity:activity-compose:1.11.0-alpha02 e androidx.activity:activity-ktx:1.11.0-alpha02 sono stati rilasciati. La versione 1.11.0-alpha02 contiene questi commit.
Modifiche alle API
- Sono stati integrati i nuovi EDGE_NONEeframeTimeMillisdi Android 16 Beta03 nelBackEventCompatfornito dalle funzionihandleOnBackStartedehandleOnBackProgresseddiOnBackPressedCallback.
Aggiornamenti delle dipendenze
- L'attività ora viene compilata con l'API 36. (I510e8, b/301910674)
Versione 1.11.0-alpha01
12 marzo 2025
androidx.activity:activity:1.11.0-alpha01, androidx.activity:activity-compose:1.11.0-alpha01 e androidx.activity:activity-ktx:1.11.0-alpha01 sono stati rilasciati. La versione 1.11.0-alpha01 contiene questi commit.
Nuove funzionalità
- È stata aggiunta l'API MediaCapabilitiesaPickVisualMediaRequestper consentire alle applicazioni di specificare le proprie funzionalità multimediali, ad esempio i tipi di HDR supportati. (Ic3ee7)
Versione 1.10
Versione 1.10.1
26 febbraio 2025
androidx.activity:activity:1.10.1, androidx.activity:activity-compose:1.10.1 e androidx.activity:activity-ktx:1.10.1 sono stati rilasciati. La versione 1.10.1 contiene questi commit.
Correzioni di bug
- ViewTree- OnBackPressedDispatcherOwnerse- FullyDrawnReporterOwnersora possono essere risolti tramite genitori disgiunti di una visualizzazione, ad esempio un- ViewOverlay. Per ulteriori informazioni sui genitori della visualizzazione disgiunta, consulta le note di rilascio di core o la documentazione in- ViewTree.setViewTreeDisjointParent. (Ie7750)
Versione 1.10.0
15 gennaio 2025
androidx.activity:activity:1.10.0, androidx.activity:activity-compose:1.10.0 e androidx.activity:activity-ktx:1.10.0 sono stati rilasciati. La versione 1.10.0 contiene questi commit.
Modifiche importanti dalla versione 1.9.0
- PhotoPickerora consente di scegliere le immagini in ordine e di scegliere quale scheda (album o immagini) deve essere inizialmente visibile.
- I contratti PickVisualMediaePickMultipleVisualMediaActivity Result che attivano il selettore di foto non delegano più direttamente a Google Play Services se il selettore di foto di sistema non è disponibile, ma utilizzano l'intentACTION_SYSTEM_FALLBACK_PICK_IMAGESpubblico e gli extra correlati per fornire un'esperienza coerente del selettore di foto a OEM e app di sistema come fallback.
- Nuova composizione locale LocalActivityche fornisceActivityper l'ambito corrente, eliminando la necessità per gli sviluppatori di ottenere unActivitydaLocalContext.
Versione 1.10.0-rc01
11 dicembre 2024
androidx.activity:activity:1.10.0-rc01, androidx.activity:activity-compose:1.10.0-rc01 e androidx.activity:activity-ktx:1.10.0-rc01 sono stati rilasciati. La versione 1.10.0-rc01 contiene questi commit.
Correzioni di bug
- È stato risolto un problema per cui la modifica dello stato abilitato mentre PredictiveBackHandlerè attualmente attivo interrompeva immediatamente il callback. Ora terminerà il callback corrente indipendentemente dalle modifiche dello stato di attivazione. (Ib8719)
Versione 1.10.0-beta01
13 novembre 2024
androidx.activity:activity:1.10.0-beta01, androidx.activity:activity-compose:1.10.0-beta01 e androidx.activity:activity-ktx:1.10.0-beta01 sono stati rilasciati senza modifiche rispetto all'ultima versione alpha. La versione 1.10.0-beta01 contiene questi commit.
Versione 1.10.0-alpha03
30 ottobre 2024
androidx.activity:activity:1.10.0-alpha03, androidx.activity:activity-compose:1.10.0-alpha03 e androidx.activity:activity-ktx:1.10.0-alpha03 sono stati rilasciati. La versione 1.10.0-alpha03 contiene questi commit.
Modifiche alle API
- È stata aggiunta una nuova composizione locale LocalActivityche fornisce l'Activityper l'ambito corrente, eliminando la necessità per gli sviluppatori di ottenere unActivitydaLocalContext. È inoltre dotata di una nuova regola di lint che controlla quandoLocalContextviene eseguito il cast in modo errato in unActivity. (I7746a, b/283009666)
Correzioni di bug
- Da Attività 1.9.3:PredictiveBackHandlernon attiverà più il callback dopo la disattivazione del gestore. In questo modo verrà risolto un problema per cuiNavHostda Navigation Compose generava unIndexOutOfBoundsException. (I3f75e, b/365027664, b/340202286)
Aggiornamento delle dipendenze
- Activity Compose ora dipende da Compose Runtime 1.7.0 (I7746a, b/283009666)
Versione 1.10.0-alpha02
4 settembre 2024
androidx.activity:activity:1.10.0-alpha02, androidx.activity:activity-compose:1.10.0-alpha02 e androidx.activity:activity-ktx:1.10.0-alpha02 sono stati rilasciati. La versione 1.10.0-alpha02 contiene questi commit.
Modifiche al comportamento
- I contratti PickVisualMediaePickMultipleVisualMediaActivity Result che attivano il selettore di foto non delegano più direttamente a Google Play Services se il selettore di foto di sistema non è disponibile, ma utilizzano l'intentACTION_SYSTEM_FALLBACK_PICK_IMAGESpubblico e gli extra correlati per fornire un'esperienza coerente del selettore di foto a OEM e app di sistema come fallback. Ciò non dovrebbe influire sull'esperienza utente per i dispositivi con una versione recente di Google Play Services. (I3513d)
Correzioni di bug
- È stata rimossa la definizione manuale dell'accesso alle nuove API della piattaforma, poiché avviene automaticamente tramite la modellazione delle API quando si utilizza R8 con AGP 7.3 o versioni successive (ad es. R8 versione 3.3) e per tutte le build quando si utilizza AGP 8.1 o versioni successive (ad es. D8 versione 8.1). I client che non utilizzano AGP sono invitati a eseguire l'aggiornamento alla versione 8.1 o successive di D8. Consulta questo articolo per ulteriori dettagli. (I9496c, b/345472586)
- Da Attività 1.9.2: è stato risolto un problema per cui l'API Activity ComposePredictiveBackHandlercontinuava a gestire il gesto Indietro del sistema sul frame in cui era disabilitata, il che poteva comportare la gestione del pulsante Indietro da parte di librerie come Navigation Compose anche con uno stack Indietro vuoto, con conseguente generazione di un erroreIndexOutOfBoundsException. (Ie3301, b/340202286)
- Da Attività 1.9.1: è stato risolto un problema conPredictiveBackHandlerper cui, dopo aver eseguito il backup del sistema, il tentativo di eseguireonBackPresseddaOnBackPressedDispatchernon riusciva. (I5f1f8)
Versione 1.10.0-alpha01
26 giugno 2024
androidx.activity:activity:1.10.0-alpha01, androidx.activity:activity-compose:1.10.0-alpha01 e androidx.activity:activity-ktx:1.10.0-alpha01 sono stati rilasciati. Questa versione è sviluppata in un branch interno.
Nuove funzionalità
- È stato aggiunto il supporto per le nuove funzionalità di PhotoPickerintrodotte in Android V, tra cui la possibilità di scegliere le immagini in ordine e selezionare la scheda (album o immagini) da visualizzare inizialmente.
Versione 1.9
Versione 1.9.3
16 ottobre 2024
androidx.activity:activity:1.9.3, androidx.activity:activity-compose:1.9.3 e androidx.activity:activity-ktx:1.9.3 sono stati rilasciati. La versione 1.9.3 contiene questi commit.
Correzioni di bug
- PredictiveBackHandlernon attiverà più il callback dopo la disattivazione del gestore. In questo modo verrà risolto un problema per cui- NavHostda Navigation Compose generava un- IndexOutOfBoundsException. (I3f75e, b/340202286)
Versione 1.9.2
4 settembre 2024
androidx.activity:activity:1.9.2, androidx.activity:activity-compose:1.9.2 e androidx.activity:activity-ktx:1.9.2 sono stati rilasciati. La versione 1.9.2 contiene questi commit.
Correzioni di bug
- È stato risolto un problema per cui l'API Activity Compose PredictiveBackHandlercontinuava a gestire il gesto Indietro del sistema sul frame in cui era disattivata, il che poteva comportare la gestione del pulsante Indietro da parte di librerie come Navigation Compose anche con uno stack Indietro vuoto, con conseguente generazione di un erroreIndexOutOfBoundsException. (Ie3301, b/340202286)
Versione 1.9.1
24 luglio 2024
androidx.activity:activity:1.9.1, androidx.activity:activity-compose:1.9.1 e androidx.activity:activity-ktx:1.9.1 sono stati rilasciati. La versione 1.9.1 contiene questi commit.
Correzioni di bug
- È stato risolto un problema con PredictiveBackHandlerper cui, dopo aver eseguito il backup del sistema, il tentativo di eseguireonBackPresseddaOnBackPressedDispatchernon riusciva. (I5f1f8)
Versione 1.9.0
17 aprile 2024
androidx.activity:activity:1.9.0, androidx.activity:activity-compose:1.9.0 e androidx.activity:activity-ktx:1.9.0 sono stati rilasciati. La versione 1.9.0 contiene questi commit.
Modifiche importanti dalla versione 1.8.0
- ComponentActivityora implementa- OnUserLeaveHintProviderper consentire ai componenti di eseguire callback per gli eventi- onUserLeaveHint.
- Le API OnBackPressedCallback,BackHandlerePredictiveBackHandlerora mostrano un avviso quando chiamanoonBackPressedDispatcher.onBackPressed()durante la gestione del pulsante Indietro, in quanto ciò interrompe sempre l'animazione del gesto indietro predittivo. Per saperne di più, consulta la guida alle best practice.
- Il resto delle API Activity è stato riscritto in Kotlin e tutte le estensioni precedentemente disponibili in activity-ktxsono state spostate inactivity.activity-ktxè ora completamente vuoto.- Nell'ambito della conversione di ActivityResultLauncherin Kotlin, il metodogetContractè ora una proprietà Kotlin astratta. Si tratta di una modifica compatibile a livello binario, ma che causa un'interruzione a livello di codice sorgente se l'implementazione diActivityResultLauncherè scritta in Kotlin.
 
- Nell'ambito della conversione di 
Versione 1.9.0-rc01
3 aprile 2024
androidx.activity:activity:1.9.0-rc01, androidx.activity:activity-compose:1.9.0-rc01 e androidx.activity:activity-ktx:1.9.0-rc01 sono stati rilasciati. La versione 1.9.0-rc01 contiene questi commit.
Aggiornamento delle dipendenze
- L'attività ora dipende da Profile Installer 1.3.1.
Versione 1.9.0-beta01
20 marzo 2024
androidx.activity:activity:1.9.0-beta01, androidx.activity:activity-compose:1.9.0-beta01 e androidx.activity:activity-ktx:1.9.0-beta01 sono stati rilasciati. La versione 1.9.0-beta01 contiene questi commit.
Correzioni di bug
- È stato corretto un problema di regressione delle prestazioni di avvio dell'attività introdotto in Activity 1.9.0-alpha02causato dalla chiamata diOnBackPressedDispatchernell'ambito della creazione dell'attività. (Ie75e3)
Versione 1.9.0-alpha03
7 febbraio 2024
androidx.activity:activity:1.9.0-alpha03, androidx.activity:activity-compose:1.9.0-alpha03 e androidx.activity:activity-ktx:1.9.0-alpha03 sono stati rilasciati. La versione 1.9.0-alpha03 contiene questi commit.
Avviso di lanugine
- Le API OnBackPressedCallback,BackHandlerePredictiveBackHandlerora mostrano un avviso quando chiamanoonBackPressedDispatcher.onBackPressed()durante la gestione del pulsante Indietro, in quanto ciò interrompe sempre l'animazione del gesto indietro predittivo. Per saperne di più, consulta la guida alle best practice. (1e4222, 2c950d, b/287505200)
Correzioni di bug
- Se viene inviato un evento Indietro dal sistema avviato durante un gesto Indietro predittivo già in esecuzione, il gesto Indietro predittivo attualmente in esecuzione viene annullato e il nuovo evento Indietro prende il sopravvento per iniziare un nuovo gesto Indietro predittivo. (I3482e)
- È stato risolto un arresto anomalo durante l'accesso a onBackPressedDispatcherda unComponentActivityper la prima volta da un thread in background. Ora puoi accedere aonBackPressedDispatcherin qualsiasi thread in sicurezza. (I79955)
Versione 1.9.0-alpha02
24 gennaio 2024
androidx.activity:activity:1.9.0-alpha02, androidx.activity:activity-compose:1.9.0-alpha02 e androidx.activity:activity-ktx:1.9.0-alpha02 sono stati rilasciati. La versione 1.9.0-alpha02 contiene questi commit.
Conversioni Kotlin
- ActivityResultRegistryè stato riscritto in Kotlin. In questo modo, la nullabilità dei generici nel contratto passato a- registerverrà trasmessa correttamente a- ActivityResultLauncherrestituito. (I121f0)
- ActivityResultè stato riscritto in Kotlin. Le estensioni Kotlin- ActivityResultche supportano la destrutturazione nei campi- resultCodee- datasono state spostate da- activity-ktxa- activity. (I0565a)
- Le estensioni Kotlin di by viewModels()perComponentActivityetrackPipAnimationHintViewsono state spostate daactivity-ktxaactivity. L'artefattoactivity-ktxora è completamente vuoto. (I0a444)
Correzioni di bug
- L'API enableEdgeToEdgeora disegna intorno a qualsiasi intaglio del display. (a3644b, b/311173461)
- Da Attività 1.8.2: è stato corretto l'extra passato aACTION_SYSTEM_FALLBACK_PICK_IMAGESdel contratto di attività di selezione delle foto per passargli correttamente la chiaveEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, anziché utilizzare l'extra con la chiave"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". È consigliato vivamente se sei un OEM che implementa un selettore di foto di fallback del sistema per supportare entrambi gli extra e garantire la massima compatibilità. (I96a00)
Versione 1.9.0-alpha01
29 novembre 2023
androidx.activity:activity:1.9.0-alpha01, androidx.activity:activity-compose:1.9.0-alpha01 e androidx.activity:activity-ktx:1.9.0-alpha01 sono stati rilasciati. La versione 1.9.0-alpha01 contiene questi commit.
Nuove funzionalità
- ComponentActivityora implementa- OnUserLeaveHintProviderper consentire ai componenti di eseguire callback per gli eventi- onUserLeaveHint. (I54892)
Modifiche alle API
- ComponentActivityè stato riscritto in Kotlin. (I14f31)
- ActivityResultCallerè stato riscritto in Kotlin. (Ib02e4)
- ActivityResultLauncherè stato riscritto in Kotlin. Nell'ambito di questa conversione, il metodo- getContractè ora una proprietà Kotlin astratta. Si tratta di una modifica compatibile a livello binario, ma che causa un'interruzione a livello di codice sorgente se l'implementazione di- ActivityResultLauncherè scritta in Kotlin. (Id4615)
- PickVisualMediaRequestora ha lo stesso livello API minimo di 19 del contratto- PickVisualMediaActivity Result. (Id6e21)
Aggiornamento delle dipendenze
- L'attività ora dipende da Core 1.13.0-alpha01. (I14f31)
Versione 1.8
Versione 1.8.2
13 dicembre 2023
androidx.activity:activity:1.8.2, androidx.activity:activity-compose:1.8.2 e androidx.activity:activity-ktx:1.8.2 sono stati rilasciati. La versione 1.8.2 contiene questi commit.
Correzioni di bug
- È stato corretto l'extra passato a ACTION_SYSTEM_FALLBACK_PICK_IMAGESdel contratto di attività del selettore di foto per passargli correttamente la chiaveEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, anziché utilizzare l'extra con la chiave"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". È consigliato vivamente se sei un OEM che implementa un selettore di foto di fallback del sistema per supportare entrambi gli extra e garantire la massima compatibilità. (I96a00)
Versione 1.8.1
15 novembre 2023
androidx.activity:activity:1.8.1, androidx.activity:activity-compose:1.8.1 e androidx.activity:activity-ktx:1.8.1 sono stati rilasciati. La versione 1.8.1 contiene questi commit.
Correzioni di bug
- OnBackPressedDispatcherora continua a inviare all'- OnBackPressedCallbackcorretto anche dopo l'aggiunta di un nuovo- OnBackPressedCallbackdurante la gestione del gesto Indietro. (Id0ff6)
Versione 1.8.0
4 ottobre 2023
androidx.activity:activity:1.8.0, androidx.activity:activity-compose:1.8.0 e androidx.activity:activity-ktx:1.8.0 sono stati rilasciati. La versione 1.8.0 contiene questi commit.
Modifiche importanti dalla versione 1.7.0
- Indietro predittivo: OnBackPressedCallbackora offre nuovi callback Indietro predittivo per la gestione dell'inizio del gesto Indietro, dell'avanzamento del gesto e dell'annullamento del gesto Indietro, oltre al precedente callbackhandleOnBackPressed()per quando il gesto Indietro viene eseguito. È disponibile anchePredictiveBackHandlerComposable per gestire gli eventi di gesto di Indietro predittivo in Activity Compose. Fornisce un flusso di oggetti BackEventCompat che devono essere raccolti nella lambda di sospensione che fornisci:
  PredictiveBackHandler { progress: Flow<BackEventCompat> ->
    // code for gesture back started
    try {
      progress.collect { backEvent ->
      // code for progress
    }
    // code for completion
    } catch (e: CancellationException) {
      // code for cancellation
    }
  }
ComponentActivity.onBackPressed() è ora deprecato a favore delle API per la gestione del pulsante Indietro. Gli sviluppatori ora devono utilizzare OnBackPressedDispatcher anziché eseguire l'override di questo metodo.
- EdgeToEdge:  ComponentActivity.enableEdgeToEdge()è stato aggiunto per configurare facilmente il display edge-to-edge in modo compatibile con le versioni precedenti.
Versione 1.8.0-rc01
20 settembre 2023
androidx.activity:activity:1.8.0-rc01, androidx.activity:activity-compose:1.8.0-rc01 e androidx.activity:activity-ktx:1.8.0-rc01 sono stati rilasciati. La versione 1.8.0-rc01 contiene questi commit.
Versione 1.8.0-beta01
6 settembre 2023
androidx.activity:activity:1.8.0-beta01, androidx.activity:activity-compose:1.8.0-beta01 e androidx.activity:activity-ktx:1.8.0-beta01 sono stati rilasciati. La versione 1.8.0-beta01 contiene questi commit.
Miglioramento della documentazione
- È stata migliorata la documentazione di BackEventCompat. (aosp/2722254)
Versione 1.8.0-alpha07
23 agosto 2023
androidx.activity:activity:1.8.0-alpha07, androidx.activity:activity-compose:1.8.0-alpha07 e androidx.activity:activity-ktx:1.8.0-alpha07 sono stati rilasciati. La versione 1.8.0-alpha07 contiene questi commit.
Nuove funzionalità
- Activity Compose ha aggiunto un nuovo - PredictiveBackHandlercomponibile per gestire gli eventi di gesto di indietro predittivo. Fornisce un- Flowdi- BackEventCompatoggetti che devono essere raccolti nella lambda sospesa che fornisci:- PredictiveBackHandler { progress: Flow<BackEventCompat> -> // code for gesture back started try { progress.collect { backEvent -> // code for progress } // code for completion } catch (e: CancellationException) { // code for cancellation } }- Viene inoltre fornito un avviso in fase di compilazione tramite la regola lint per garantire le chiamate - Flow- collect(). (Id2773, b/294884345)
- onBackPressedDispatcherin- ComponentActivityora viene inizializzato in modo differito, quindi viene creato solo quando necessario. (I0bf8e)
Correzioni di bug
- ComponentActivitynon mostrerà più un errore NullPointerException su Android 13 quando riceve un callback- onBackPressed()e l'attività è già stata- DESTROYED. (Idb055, b/291869278)
- Sono stati rimossi gli utilizzi dell'API sperimentale isAtLeastU()(Ie9117, b/289269026)
Versione 1.8.0-alpha06
21 giu 2023
androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06 e androidx.activity:activity-ktx:1.8.0-alpha06 sono stati rilasciati. La versione 1.8.0-alpha06 contiene questi commit.
Nuove funzionalità
- Ora OnBackPressedDispatcherannulla correttamente tutti i callback rimossi durante un gesto di Indietro predittivo. (I3f90f)
Modifiche alle API
- Quando passi SystemBarStyle.autoall'APIenableEdgeToEdge, ora puoi eseguire l'override del parametro lambdadetectDarkModeper fornire una logica personalizzata per il rilevamento della modalità notturna. (aosp/2546393, b/278263793)
Versione 1.8.0-alpha05
7 giugno 2023
androidx.activity:activity:1.8.0-alpha05, androidx.activity:activity-compose:1.8.0-alpha05 e androidx.activity:activity-ktx:1.8.0-alpha05 sono stati rilasciati. Questa versione è sviluppata in un branch interno.
Modifiche alle API
- Activity ora fornisce una classe BackEventCompatche funge da versione compatibile con le versioni precedenti diBackEvent, disaccoppiata dalla classeBackEventdel framework.
- Modifica che causa interruzione: i metodi handleOnBackStartedehandleOnBackProgresseddiOnBackPressedCallbackora ricevono un'istanzaandroidx.activity.BackEventCompatanziché una classeandroid.window.BackEventdel framework. Anche le API@VisibleForTestingequivalenti suOnBackPressedDispatchersono state aggiornate.
- Il costruttore per OnBackPressedDispatcherora accetta un'istanzaConsumer<Boolean>facoltativa che consente ai proprietari del dispatcher di ricevere un callback ogni volta che il numero di callback abilitati cambia da zero a diverso da zero o viceversa.
Correzioni di bug
- Da Attività 1.7.2: correggi l'arresto anomalo diReportDrawnquando si esce da una schermata prima della chiamata direport. (Ic46f1, b/260506820)
Versione 1.8.0-alpha04
10 maggio 2023
androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04 e androidx.activity:activity-ktx:1.8.0-alpha04 sono stati rilasciati. Questa versione è stata rilasciata da un branch interno.
Correzioni di bug
- A partire dall'attività 1.7.1: - ReportFullyDrawExecuternon perde più quando si utilizzaComponentActivityconActivityScenario. (Id2ff2, b/277434271)
Versione 1.8.0-alpha03
12 aprile 2023
androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03 e androidx.activity:activity-ktx:1.8.0-alpha03 sono stati rilasciati. Questa versione è stata rilasciata da un branch interno.
Nuove funzionalità
- È stato aggiunto ComponentActivity.setUpEdgeToEdge()per configurare facilmente il display edge-to-edge in modo compatibile con le versioni precedenti.
Modifiche alle API
- ComponentActivity.onBackPressed()è ora deprecato a favore delle API per la gestione del pulsante Indietro. Gli sviluppatori ora devono utilizzare- OnBackPressedDispatcheranziché eseguire l'override di questo metodo. (Ibce2f, b/271596918)
- ComponentDialoge- ComponentActivityora contengono l'API pubblica- initViewTreeOwners()da utilizzare per inizializzare tutti i proprietari dell'albero delle visualizzazioni prima di impostare la visualizzazione dei contenuti. (Ibdce0, b/261314581)
Correzioni di bug
- È stato risolto un problema per cui i fragment invalidavano in modo errato MenuHost e causavano un comportamento imprevisto in altri menu dell'attività. (I9404e, b/244336571)
Altre modifiche
- ActivityResultRegisterora utilizza Kotlin- Randomanziché Java. (I4d98f, b/272096025)
Versione 1.8.0-alpha02
8 marzo 2023
androidx.activity:activity:1.8.0-alpha02, androidx.activity:activity-compose:1.8.0-alpha02 e androidx.activity:activity-ktx:1.8.0-alpha02 sono stati rilasciati. Sviluppato da un ramo interno.
Aggiornamento delle dipendenze
- Da Attività 1.7.0-rc01: l'attività ora dipende daLifecycle 2.6.0.
Versione 1.8.0-alpha01
8 febbraio 2023
androidx.activity:activity:1.8.0-alpha01, androidx.activity:activity-compose:1.8.0-alpha01 e androidx.activity:activity-ktx:1.8.0-alpha01 sono stati rilasciati. È stato creato da un branch interno.
Nuove funzionalità
- La classe OnBackPressedCallbackora contiene nuovi callback di avanzamento di Indietro predittivo per la gestione dell'avvio del gesto Indietro, dell'avanzamento durante il gesto e dell'annullamento del gesto Indietro, oltre al precedente callbackhandleOnBackPressed()per quando il gesto Indietro viene eseguito.
Versione 1.7
Versione 1.7.2
24 maggio 2023
androidx.activity:activity:1.7.2, androidx.activity:activity-compose:1.7.2 e androidx.activity:activity-ktx:1.7.2 sono stati rilasciati. La versione 1.7.2 contiene questi commit.
Correzioni di bug
- Correzione dell'arresto anomalo di ReportDrawnquando si esce da una schermata prima della chiamata direport. (Ic46f1, b/260506820)
Versione 1.7.1
19 aprile 2023
androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1 e androidx.activity:activity-ktx:1.7.1 sono stati rilasciati. La versione 1.7.1 contiene questi commit.
Correzioni di bug
- ReportFullyDrawExecuternon perde più quando si utilizza- ComponentActivitycon- ActivityScenario. (Id2ff2, b/277434271)
Versione 1.7.0
22 marzo 2023
androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0 e androidx.activity:activity-ktx:1.7.0 sono stati rilasciati. La versione 1.7.0 contiene questi commit.
Modifiche importanti dalla versione 1.6.0
- I contratti di attività del selettore di foto in PickVisualMediaePickMultipleVisualMediasono stati aggiornati per includere un fallback aggiuntivo per quandoMediaStore.ACTION_PICK_IMAGESnon è disponibile, che consente a OEM e app di sistema, come Google Play Services, di fornire un'esperienza coerente del selettore di foto su una gamma più ampia di dispositivi Android e livelli API implementando l'azione di fallback. Il selettore di foto utilizzerà questo fallback se è disponibile prima di tornare a utilizzareIntent.ACTION_OPEN_DOCUMENT, che rimane a supporto di tutti i dispositivi con API 19 e versioni successive.
- ComponentDialogora implementa- SavedStateRegistryOwnere ha accesso al proprio- SavedStateRegistrye imposta- SavedStateRegistryOwnerper il proprio- ViewTree. Ora è possibile utilizzare Jetpack Compose all'interno di un- ComponentDialogperché soddisfa i requisiti di- LifecycleOwnere- SavedStateRegistryOwnercollegati alla finestra tramite le API- ViewTree.
- IntentSenderRequest.Builder.setFlags()ora ti consente di impostare più flag da- Intent, anziché un solo flag.
Conversione Kotlin
Un certo numero di classi Activity sono state convertite in Kotlin. Tutti i corsi convertiti mantengono la compatibilità binaria con le versioni precedenti. Le seguenti classi presentano modifiche incompatibili con l'origine per le classi scritte in Kotlin: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.
La tabella seguente mostra le conversioni delle origini per la nuova versione di Attività:
| Attività 1.5 | Attività 1.6 | 
|---|---|
| override fun getActivityResultRegistry() = activityResultRegistry | override val activityResultRegistry = activityResultRegistry | 
| override fun getOnBackPressedDispatcher() = onBackPressedDispatcher | override val onBackPressedDispatcher = onBackPressedDispatcher | 
Anche queste classi sono state convertite in Kotlin, ma rimangono compatibili con l'origine: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest e OnBackPressedDispatcher
API FullyDrawnReporter
ComponentActivity ora fornisce un'istanza FullyDrawnReporter che consente a più componenti di segnalare quando sono pronti per l'interazione. ComponentActivity attenderà il completamento di tutti i componenti prima di chiamare reportFullyDrawn() per tuo conto. Queste API si occupano dei requisiti di sincronizzazione per te e non devono essere chiamate nell'ambito di una chiamata onDraw.
Ti consigliamo di abilitare queste API:
- Segnalazione di Android Runtime al termine dell'avvio, per garantire che tutto il codice eseguito durante una sequenza di avvio multi-frame sia incluso e abbia la priorità per la compilazione in background.
- Macrobenchmark di segnalazione e Play Vitals quando l'applicazione deve essere considerata completamente disegnata per le metriche di avvio, in modo da poter monitorare le prestazioni.
Sono state aggiunte tre API Activity Compose per semplificare l'utilizzo di FullyDrawnReporter dai singoli componenti componibili:
- ReportDrawnindica che il tuo componente componibile è immediatamente pronto per l'interazione.
- ReportDrawnWhenaccetta un predicato (ovvero- list.count > 0) per indicare quando il componente componibile è pronto per l'interazione.
- ReportDrawnAfteraccetta un metodo di sospensione che, al termine, indica che sei pronto per l'interazione.
Aggiornamenti delle dipendenze
- L'attività ora dipende dal ciclo di vita 2.6.1. (8fc31d)
- L'attività ora dipende da ProfileInstaller 1.3.0. (83d3b1)
Versione 1.7.0-rc01
8 marzo 2023
androidx.activity:activity:1.7.0-rc01, androidx.activity:activity-compose:1.7.0-rc01 e androidx.activity:activity-ktx:1.7.0-rc01 sono stati rilasciati. La versione 1.7.0-rc01 contiene questi commit.
Aggiornamento delle dipendenze
- L'attività ora dipende da Lifecycle 2.6.0.
Versione 1.7.0-beta02
22 febbraio 2023
androidx.activity:activity:1.7.0-beta02, androidx.activity:activity-compose:1.7.0-beta02 e androidx.activity:activity-ktx:1.7.0-beta02 sono stati rilasciati. La versione 1.7.0-beta02 contiene questi commit.
Modifiche alle API
- L'intent e l'extra utilizzati dai contratti PickVisualMediaePickMultipleVisualMediacome fallback quandoMediaStore.ACTION_PICK_IMAGESnon è disponibile sono ora costanti pubbliche che forniscono stabilità dell'API a OEM e app di sistema che vogliono offrire un'esperienza coerente con il selettore di foto. L'implementazione di questo fallback è ancora limitata alle sole app di sistema. (Icd320)
Versione 1.7.0-beta01
8 febbraio 2023
androidx.activity:activity:1.7.0-beta01, androidx.activity:activity-compose:1.7.0-beta01 e androidx.activity:activity-ktx:1.7.0-beta01 sono stati rilasciati. La versione 1.7.0-beta01 contiene questi commit.
Nuove funzionalità
- IntentSenderRequest.Builder.setFlags()ora ti consente di impostare più flag da- Intent, anziché un solo flag. (Iac04c)
Correzioni di bug
- Il fallback per PickVisualMediaquando il framework Photo Picker non è disponibile ora limita correttamente la gestione alle app installate nell'immagine di sistema del dispositivo. (If8ae6)
Conversioni Kotlin
- ActivityResultRegistryOwnerè ora scritto in Kotlin. Si tratta di una modifica incompatibile con l'origine per le classi scritte in Kotlin: ora devi eseguire l'override della proprietà- activityResultRegistryanziché implementare la funzione- getActivityResultRegistry()precedente. (I0b00e)
- OnBackPressedDispatcherOwnerè ora scritto in Kotlin. Si tratta di una modifica incompatibile con l'origine per le classi scritte in Kotlin: ora devi eseguire l'override della proprietà- onBackPressedDispatcheranziché implementare la funzione- getOnBackPressedDispatcherprecedente. (Ia277d)
- ContextAware,- ContextAwareHelper,- OnContextAvailableListener,- IntentSenderRequeste- OnBackPressedDispatchersono ora scritti in Kotlin. (I1a73e, Iada92, aosp/2410754, I18ac7, b/257291701)
Versione 1.7.0-alpha04
25 gennaio 2023
androidx.activity:activity:1.7.0-alpha04, androidx.activity:activity-compose:1.7.0-alpha04 e androidx.activity:activity-ktx:1.7.0-alpha04 sono stati rilasciati. La versione 1.7.0-alpha04 contiene questi commit.
Nuove funzionalità
- I contratti PickVisualMediaePickMultipleVisualMediaActivity Result ora utilizzeranno un selettore di foto fornito da Google Play Services, se disponibile, nei casi in cui il selettore di foto fornito dal sistema Android (ad es.MediaStore.ACTION_PICK_IMAGES) non è disponibile. L'APIisPhotoPickerAvailable()che rileva solo il selettore di foto fornito dal sistema Android è stata ritirata. Ti consigliamo di utilizzare la nuova APIisPhotoPickerAvailable(Context), che indica se è disponibile Photo Picker. (I55be6)
Versione 1.7.0-alpha03
11 gennaio 2023
androidx.activity:activity:1.7.0-alpha03, androidx.activity:activity-compose:1.7.0-alpha03 e androidx.activity:activity-ktx:1.7.0-alpha03 sono stati rilasciati. La versione 1.7.0-alpha03 contiene questi commit.
Nuove funzionalità
- ComponentDialogora implementa- SavedStateRegistryOwnere ha accesso al proprio- SavedStateRegistrye imposta- SavedStateRegistryOwnerper il proprio ViewTree. Ora è possibile utilizzare Jetpack Compose all'interno di un- ComponentDialogin quanto soddisfa i requisiti- LifecycleOwnere- SavedStateRegistryOwnerallegati alla finestra tramite le API ViewTree. (Idca17, I73468 b/261162296)
Modifiche alle API
- È stato aggiunto un componente ReportDrawnche contrassegna immediatamente l'attività come pronta per la chiamatareportFullyDrawn. (Ic5b14, b/259687964)
Conversioni Kotlin
- Le classi ActvitiyResultCallbackeOnBackPressedCallbacksono state entrambe convertite in Kotlin mantenendo la compatibilità con l'origine e il binario. (Ifc5e5, Ide1b0, b/257291701)
Versione 1.7.0-alpha02
24 ottobre 2022
androidx.activity:activity:1.7.0-alpha02, androidx.activity:activity-compose:1.7.0-alpha02 e androidx.activity:activity-ktx:1.7.0-alpha02 sono stati rilasciati. La versione 1.7.0-alpha02 contiene questi commit.
Correzioni di bug
- Da Attività 1.6.1: è stato risolto un problema relativo al contrattoPickMultipleVisualMediaRisultato attività che non veniva avviato sui dispositivi Android R quando si utilizzava il valore predefinito permaxItems. (Ie2776, b/249182130)
Versione 1.7.0-alpha01
5 ottobre 2022
androidx.activity:activity:1.7.0-alpha01, androidx.activity:activity-compose:1.7.0-alpha01 e androidx.activity:activity-ktx:1.7.0-alpha01 sono stati rilasciati. La versione 1.7.0-alpha01 contiene questi commit.
API FullyDrawnReporter
ComponentActivity ora fornisce un'istanza FullyDrawnReporter che consente a più componenti di segnalare quando sono pronti per l'interazione. ComponentActivity attenderà il completamento di tutti i componenti prima di chiamare reportFullyDrawn() per tuo conto. Queste API si occupano dei requisiti di sincronizzazione per te e non devono essere chiamate nell'ambito di una chiamata onDraw.
Ti consigliamo di abilitare queste API:
- Segnalazione di Android Runtime al termine dell'avvio, per garantire che tutto il codice eseguito durante una sequenza di avvio multi-frame sia incluso e abbia la priorità per la compilazione in background.
- Macrobenchmark di segnalazione e Play Vitals quando l'applicazione deve essere considerata completamente disegnata per le metriche di avvio, in modo da poter monitorare le prestazioni.
Sono state aggiunte due API Activity Compose per semplificare l'utilizzo di FullyDrawnReporter dai singoli componenti componibili:
- ReportDrawnWhenaccetta un predicato (ovvero- list.count > 0) per indicare quando il componente componibile è pronto per l'interazione.
- ReportDrawnAfteraccetta un metodo di sospensione che, al termine, indica che sei pronto per l'interazione.
Versione 1.6.1
Versione 1.6.1
24 ottobre 2022
androidx.activity:activity:1.6.1, androidx.activity:activity-compose:1.6.1 e androidx.activity:activity-ktx:1.6.1 sono stati rilasciati. La versione 1.6.1 contiene questi commit.
Correzioni di bug
- È stato risolto un problema relativo al contratto PickMultipleVisualMediaActivity Result che non veniva avviato sui dispositivi Android R quando si utilizzava il valore predefinito permaxItems. (Ie2776, b/249182130)
Versione 1.6.0
Versione 1.6.0
21 settembre 2022
androidx.activity:activity:1.6.0, androidx.activity:activity-compose:1.6.0 e androidx.activity:activity-ktx:1.6.0 sono stati rilasciati. La versione 1.6.0 contiene questi commit.
Modifiche importanti dalla versione 1.5.0
- Sono stati aggiunti ActivityResultContracts.PickVisualMediaeActivityResultContracts.PickMultipleVisualMediaper fornire un contratto compatibile con le versioni precedenti che utilizzaMediaStore.ACTION_PICK_IMAGESquando è disponibile il selettore di foto eIntent.ACTION_OPEN_DOCUMENTquando non è disponibile.
- È stato integrato l'OnBackInvokedCallbackin Android 13 nelOnBackPressedDispatchersfornito daComponentActivityeComponentDialog. Ciò garantisce che tutte le API create suOnBackPressedDispatcherfunzionino quando viene attivato un gesto Indietro predittivo.
Versione 1.6.0-rc02
7 settembre 2022
androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02 e androidx.activity:activity-ktx:1.6.0-rc02 sono stati rilasciati. La versione 1.6.0-rc02 contiene questi commit.
Correzioni di bug
- OnBackPressedDispatcherora registra- OnBackInvokedCallbackcon- PRIORITY_DEFAULTanziché- PRIORITY_OVERLAY. (I3901f)
- Le classi che estendono ComponentActivityora avranno sempre entrambi i callbackonMultiWindowModeChanged()inviati. (Ic4d85)
- ActivityResultRegistrynon restituirà più un risultato a- ActivityResultCallbackquando la chiamata- launchgenera un errore- Exceptione il callback è stato registrato senza un- LifecycleOwner. (Ia7ff7, b/238350794)
- ComponentActivityora invierà correttamente le chiamate al menu senza la necessità di chiamare la super funzione nella tua attività. (Ie33c5, b/238057118)
Aggiornamento delle dipendenze
- La libreria Activityora dipende da Lifecycle2.5.1. (If6697)
Versione 1.6.0-rc01
24 agosto 2022
androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01 e androidx.activity:activity-ktx:1.6.0-rc01 sono stati rilasciati. La versione 1.6.0-rc01 contiene questi commit.
Correzioni di bug
- L'inizializzazione di un OnBackPressedDispatchernon causerà piùClassVerificationErrorquando si utilizzano versioni dell'SDK precedenti alla 33. (Ic32e1)
- Le classi che eseguono l'override del callback ComponentActivitydionPictureInPictureModeChanged()ora avranno sempre i callback inviati. (Ib7fdb)
Versione 1.6.0-beta01
10 agosto 2022
androidx.activity:activity:1.6.0-beta01, androidx.activity:activity-compose:1.6.0-beta01 e androidx.activity:activity-ktx:1.6.0-beta01 sono stati rilasciati. La versione 1.6.0-beta01 contiene questi commit.
Modifiche alle API
- Ha contrassegnato i metodi startActivityForResultestartIntentSenderForResultdeprecati suComponentActivitycon@NonNullperché il passaggio dinullha sempre causato un arresto anomalo. (Id2a25, b/231476082)
Correzioni di bug
- Da Attività 1.5.1:ActivityResultRegistrynon restituirà più un risultato aActivityResultCallbackquando la chiamatalaunchgenera un erroreExceptione il callback è stato registrato senzaLifecycleOwner. (Ia7ff7, b/238350794)
- Da Attività 1.5.1:ComponentActivityora invierà correttamente le chiamate di menu agli overrideonPrepareOptionMenu(),onCreateOptionsMenu()eonOptionsItemSelected()senza la necessità di chiamare la super funzione. (Ie33c5, b/238057118)
Aggiornamento delle dipendenze
- Da Attività 1.5.1: la libreriaActivityora dipende dalla versioneLifecycle2.5.1. (If6697)
Versione 1.6.0-alpha05
15 giugno 2022
androidx.activity:activity:1.6.0-alpha05, androidx.activity:activity-compose:1.6.0-alpha05 e androidx.activity:activity-ktx:1.6.0-alpha05 sono stati rilasciati. La versione 1.6.0-alpha05 è stata sviluppata in un ramo di pre-release privato e non ha commit pubblici.
Modifiche alle API
- minCompileSdkora è 33 in linea con l'SDK Tiramisu Beta 3
Correzioni di bug
- È stato corretto l'arresto anomalo sui dispositivi meno recenti durante il controllo dell'estensione dell'SDK per PickVisualMediaActivityResultContract, in modo che ora funzioni conACTION_OPEN_DOCUMENTsui dispositivi con Android 10 e versioni precedenti.
Versione 1.6.0-alpha04
18 maggio 2022
androidx.activity:activity:1.6.0-alpha04 e androidx.activity:activity-ktx:1.6.0-alpha04 sono stati rilasciati.
Correzioni di bug
- È stato corretto un errore in PickVisualMediaRequestin cui il tentativo di creare una richiesta, tramite il builder o la funzione Kotlin di primo livello, causava un overflow dello stack.
- È stata integrata la OnBackInvokedCallbackin Android 13 Dev Beta 2 nelOnBackPressedDispatcherfornito daComponentDialog. Ciò garantisce il funzionamento di tutte le API create suOnBackPressedDispatcherquando si attiva un gesto Indietro predittivo.
Versione 1.6.0-alpha03
27 aprile 2022
androidx.activity:activity:1.6.0-alpha03, androidx.activity:activity-compose:1.6.0-alpha03 e androidx.activity:activity-ktx:1.6.0-alpha03 sono stati rilasciati.
- Nota: questa versione verrà compilata solo in base all'SDK Android 13 Developer Beta 1.
Nuove funzionalità
- Sono stati aggiunti ActivityResultContracts.PickVisualMediaeActivityResultContracts.PickMultipleVisualMediaper fornire un contratto compatibile con le versioni precedenti che utilizzaMediaStore.ACTION_PICK_IMAGESquando è disponibile il selettore di foto eIntent.ACTION_OPEN_DOCUMENTquando non è disponibile.
- È stato integrato il OnBackInvokedCallbackin Android 13 Dev Beta 1 nelOnBackPressedDispatcherfornito daComponentActivity. Ciò garantisce il funzionamento di tutte le API create suOnBackPressedDispatcherquando si attiva un gesto Indietro predittivo.
Versione 1.6.0-alpha01
23 marzo 2022
androidx.activity:activity:1.6.0-alpha01, androidx.activity:activity-compose:1.6.0-alpha01 e androidx.activity:activity-ktx:1.6.0-alpha01 sono stati rilasciati.
- Nota: questa versione verrà compilata solo in base all'SDK Android 13 Developer Preview 2.
Nuove funzionalità
- Sono state integrate le modifiche apportate ad Android 13 Dev Preview 2 in ComponentActivity.
Versione 1.5.1
Versione 1.5.1
27 luglio 2022
androidx.activity:activity:1.5.1, androidx.activity:activity-compose:1.5.1 e androidx.activity:activity-ktx:1.5.1 sono stati rilasciati. La versione 1.5.1 contiene questi commit.
Correzioni di bug
- ActivityResultRegistrynon restituirà più un risultato a- ActivityResultCallbackquando la chiamata- launch()genera un errore- Exceptione il callback è stato registrato senza un- LifecycleOwner. (Ia7ff7, b/238350794)
- ComponentActivityora invierà correttamente le chiamate di menu agli override- onPrepareOptionMenu(),- onCreateOptionsMenu()e- onOptionsItemSelected()senza la necessità di chiamare la super funzione. (Ie33c5, b/238057118)
Aggiornamento delle dipendenze
- La libreria Activityora dipende da Lifecycle2.5.1. (If6697)
Versione 1.5.0
Versione 1.5.0
29 giugno 2022
androidx.activity:activity:1.5.0, androidx.activity:activity-compose:1.5.0 e androidx.activity:activity-ktx:1.5.0 sono stati rilasciati. La versione 1.5.0 contiene questi commit.
Modifiche importanti dalla versione 1.4.0
- ComponentDialog - ComponentDialogè una sottoclasse diDialogche include unOnBackPressedDispatcherche verrà chiamato quando viene premuto il pulsante Indietro del sistema e la finestra di dialogo è visibile. È importante sottolineare che questa sottoclasse imposta ancheViewTreeOnBackPressedDispatcherOwner, consentendo alle visualizzazioni di recuperare il dispatcher corretto in modo generico, indipendentemente dal fatto che esista in unComponentActivityo in unComponentDialog.
- Interfacce di callback: ComponentActivityora implementa un insieme di interfacce di callback modulari che possono essere utilizzate al posto dei callbackActivity. Queste interfacce includono:OnNewIntentProvider,OnConfigurationChangedProvider,OnTrimMemoryProvider,OnPictureInPictureModeChangedProvider,OnMultiWindowModeChangedProvider
- Integrazione di CreationExtras: ComponentActivityora può fornire unViewModelProvider.Factorystateless tramite Lifecycle2.5.0diCreationExtras.
Altre modifiche
- Il costruttore senza parametri per ActivityResultContracts.CreateDocumentè stato ritirato e sostituito con un nuovo costruttore che accetta un tipo MIME concreto (ad es. "image/png") come richiesto daIntent.ACTION_CREATE_DOCUMENT.
Versione 1.5.0-rc01
11 maggio 2022
androidx.activity:activity:1.5.0-rc01, androidx.activity:activity-compose:1.5.0-rc01 e androidx.activity:activity-ktx:1.5.0-rc01 sono stati rilasciati senza modifiche rispetto alla versione 1.5.0-beta01. La versione 1.5.0-rc01 contiene questi commit.
Versione 1.5.0-beta01
20 aprile 2022
androidx.activity:activity:1.5.0-beta01, androidx.activity:activity-compose:1.5.0-beta01 e androidx.activity:activity-ktx:1.5.0-beta01 sono stati rilasciati. La versione 1.5.0-beta01 contiene questi commit.
Aggiornamenti delle dipendenze
- L'attività ora dipende dal ciclo di vita 2.4.0-beta01.
Versione 1.5.0-alpha05
6 aprile 2022
androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05 e androidx.activity:activity-ktx:1.5.0-alpha05 sono stati rilasciati. La versione 1.5.0-alpha05 contiene questi commit.
Correzioni di bug
- Il onPanelClosed()diComponentActivityora chiama anche il superonPanelClosed(), risolvendo un problema per cui il metodoonContextMenuClosednon veniva chiamato. (Ib6f77)
Versione 1.5.0-alpha04
23 marzo 2022
androidx.activity:activity:1.5.0-alpha04, androidx.activity:activity-compose:1.5.0-alpha04 e androidx.activity:activity-ktx:1.5.0-alpha04 sono stati rilasciati. La versione 1.5.0-alpha04 contiene questi commit.
Correzioni di bug
- SavedStateViewFactoryora supporta l'utilizzo di- CreationExtrasanche se è stato inizializzato con un- SavedStateRegistryOwner. Se vengono forniti extra, gli argomenti inizializzati vengono ignorati. (I6c43b, b/224844583)
Versione 1.5.0-alpha03
23 febbraio 2022
androidx.activity:activity:1.5.0-alpha03, androidx.activity:activity-compose:1.5.0-alpha03 e androidx.activity:activity-ktx:1.5.0-alpha03 sono stati rilasciati. La versione 1.5.0-alpha03 contiene questi commit.
Modifiche alle API
- Ora puoi passare CreationExtrasalla funzione di attivitàby viewModels()(I6a3e6, b/217600303)
Versione 1.5.0-alpha02
9 febbraio 2022
androidx.activity:activity:1.5.0-alpha02, androidx.activity:activity-compose:1.5.0-alpha02 e androidx.activity:activity-ktx:1.5.0-alpha02 sono stati rilasciati. La versione 1.5.0-alpha02 contiene questi commit.
Nuove funzionalità
- ComponentActivityora implementa l'interfaccia- OnPictureInPictureModeChangedProviderper consentire a qualsiasi componente di ricevere eventi di modifica della modalità Picture in picture. (I9f567)
- ComponentActivityora implementa l'interfaccia- OnMultiWindowModeChangedProviderper consentire a qualsiasi componente di ricevere eventi di modifica della modalità multi-finestra. (I62d91)
Versione 1.5.0-alpha01
26 gennaio 2022
androidx.activity:activity:1.5.0-alpha01, androidx.activity:activity-compose:1.5.0-alpha01 e androidx.activity:activity-ktx:1.5.0-alpha01 sono stati rilasciati. La versione 1.5.0-alpha01 contiene questi commit.
Nuove funzionalità
- ComponentActivityora si integra con ViewModel CreationExtras, introdotto nell'ambito di Lifecycle- 2.5.0-alpha01. (Ie7e00, b/207012584)
- È stata aggiunta ComponentDialog, una sottoclasse diDialogche include unOnBackPressedDispatcherche verrà chiamato quando viene premuto il pulsante Indietro del sistema quando la finestra di dialogo è visibile. È importante sottolineare che questa sottoclasse imposta ancheViewTreeOnBackPressedDispatcherOwner, consentendo alle visualizzazioni un modo generico per recuperare il dispatcher corretto indipendentemente dal fatto che esista in unComponentActivityo in unComponentDialog. (I8a1bc)
- ComponentActivityora implementa la nuova interfaccia- OnNewIntentProviderper consentire a qualsiasi componente di ricevere questi eventi. (If1f8b)
- ComponentActivityora implementa la nuova interfaccia- OnConfigurationChangedProviderper consentire a qualsiasi componente di ricevere questi eventi. (If623b)
- ComponentActivityora implementa la nuova interfaccia- OnTrimMemoryProviderper consentire a qualsiasi componente di ricevere questi eventi. (Ia9295)
Modifiche alle API
- Il costruttore senza parametri per
ActivityResultContracts.CreateDocumentè stato ritirato e sostituito con un nuovo costruttore che accetta un tipo MIME concreto (ad es."image/png") come richiesto daIntent.ACTION_CREATE_DOCUMENT. (I2bec6)
- Il OnBackPressedDispatcherOwnerassociato a una vista ora può essere recuperato tramiteViewTreeOnBackPressedDispatcherOwner, anziché fare affidamento sul casting diContext. (I74685)
Correzioni di bug
- È stato corretto un arresto anomalo durante l'accesso a un ViewModelper la prima volta da un callbackregisterForActivityResult()o dai callback a unLifecycleObserveraggiunto come parte diinitdi unComponentActivity. (Ife83f)
Versione 1.4.0
Versione 1.4.0
27 ottobre 2021
androidx.activity:activity:1.4.0, androidx.activity:activity-compose:1.4.0 e androidx.activity:activity-ktx:1.4.0 sono stati rilasciati. La versione 1.4.0 contiene questi commit.
Modifiche importanti dalla versione 1.3.0
- AndroidX ComponentActivityora implementa l'interfacciaMenuHost. In questo modo, qualsiasi componente può aggiungere voci di menu aActionBaraggiungendo un'istanza diMenuProviderall'attività. OgniMenuProviderpuò essere aggiunto facoltativamente con unLifecycleche controllerà automaticamente la visibilità di queste voci di menu in base allo stato diLifecyclee gestirà la rimozione diMenuProviderquandoLifecycleviene eliminato.
- La classe ActivityResultContractè stata riscritta in Kotlin per garantire che gli sviluppatori che scrivono contratti personalizzati in Kotlin possano definire la corretta nullabilità per le classi di input e output.
- La classe ActivityResultContractse i relativi contratti sono stati riscritti in Kotlin per garantire la corretta nullabilità.
Versione 1.4.0-rc01
13 ottobre 2021
androidx.activity:activity:1.4.0-rc01, androidx.activity:activity-compose:1.4.0-rc01 e androidx.activity:activity-ktx:1.4.0-rc01 sono stati rilasciati. La versione 1.4.0-rc01 contiene questi commit.
Correzioni di bug
- ActivityResultRegistrynon restituirà più un risultato a- ActivityResultCallbackquando la chiamata- launchgenera un errore- Exception. (If4f91, b/200845664)
Versione 1.4.0-beta01
29 settembre 2021
androidx.activity:activity:1.4.0-beta01, androidx.activity:activity-compose:1.4.0-beta01 e androidx.activity:activity-ktx:1.4.0-beta01 sono stati rilasciati. La versione 1.4.0-beta01 contiene questi commit.
Modifiche alle API
- È stato corretto il tipo per
ActivityResultContracts.OpenMultipleDocumentseActivityResultContracts.GetMultipleContentsche causava l'utilizzo di un tipo di outputList<? extends Uri>quando si utilizzava il codice del linguaggio di programmazione Java. (If71de)
- Le costanti pubbliche all'interno delle classi ActivityResultContracts.StartActivityForResult,ActivityResultContracts.StartIntentSenderForResulteActivityResultContracts.RequestMultiplePermissionssono ora accessibili quando si utilizza Kotlin tramite i relativi oggettiCompanionora pubblici. (aosp/1832555)
Aggiornamenti della documentazione
- Il messaggio di ritiro delle API ora gestite dalle API Activity Result, ovvero startActivityForResult,startIntentSenderForResult,onActivityResult,requestPermissionseonRequestPermissionsResult, è stato ampliato con maggiori dettagli. (cce80f)
Versione 1.4.0-alpha02
15 settembre 2021
androidx.activity:activity:1.4.0-alpha02, androidx.activity:activity-compose:1.4.0-alpha02 e androidx.activity:activity-ktx:1.4.0-alpha02 sono stati rilasciati. La versione 1.4.0-alpha02 contiene questi commit.
Nuove funzionalità
- L'artefatto activity-composeora contiene un errore di lintLaunchDuringCompositionche impedisce di chiamare il metodolaunchdiActivityResultLaunchercome parte della composizione, in quanto la composizione non deve avere effetti collaterali. Utilizza le API per la gestione degli effetti collaterali. (7c2bbe, b/191347220)
Modifiche alle API
- La classe ActivityResultContractè stata riscritta in Kotlin per garantire che gli sviluppatori che scrivono contratti personalizzati in Kotlin possano definire la corretta nullabilità per le classi di input e output. (I8a8f5)
- La classe ActivityResultContractse i relativi contratti sono stati riscritti in Kotlin per garantire la corretta nullabilità. (I69802)
Versione 1.4.0-alpha01
1° settembre 2021
androidx.activity:activity:1.4.0-alpha01, androidx.activity:activity-compose:1.4.0-alpha01 e androidx.activity:activity-ktx:1.4.0-alpha01 sono stati rilasciati. La versione 1.4.0-alpha01 contiene questi commit.
Nuove funzionalità
- AndroidX ComponentActivityora implementa l'interfacciaMenuHost. In questo modo, qualsiasi componente può aggiungere voci di menu aActionBaraggiungendo un'istanza diMenuProviderall'attività. OgniMenuProviderpuò essere aggiunto facoltativamente con unLifecycleche controllerà automaticamente la visibilità di queste voci di menu in base allo stato diLifecyclee gestirà la rimozione diMenuProviderquandoLifecycleviene eliminato. (I3b608):
/**
  * Using the addMenuProvider() API directly in your Activity
  **/
class ExampleActivity : ComponentActivity(R.layout.activity_example) {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    // Add menu items without overriding methods in the Activity
   addMenuProvider(object : MenuProvider {
      override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
        // Add menu items here
        menuInflater.inflate(R.menu.example_menu, menu)
      }
      override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
        // Handle the menu selection
        return true
      }
    })
  }
}
/**
  * Using the addMenuProvider() API in a Fragment
  **/
class ExampleFragment : Fragment(R.layout.fragment_example) {
  override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    // The usage of an interface lets you inject your own implementation
    val menuHost: MenuHost = requireActivity()
  
    // Add menu items without using the Fragment Menu APIs
    // Note how we can tie the MenuProvider to the viewLifecycleOwner
    // and an optional Lifecycle.State (here, RESUMED) to indicate when
    // the menu should be visible
    menuHost.addMenuProvider(object : MenuProvider {
      override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
        // Add menu items here
        menuInflater.inflate(R.menu.example_menu, menu)
      }
      override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
        // Handle the menu selection
        return true
      }
    }, viewLifecycleOwner, Lifecycle.State.RESUMED)
  }
Modifiche al comportamento
- ActivityResultRegistryora genererà un- IllegalStateExceptionquando si tenta di chiamare- launch()su un- ActivityResultLauncherche non è stato registrato o che è stato annullato. (Ida75d, b/192567522)
Contributo esterno
- Grazie dmitrilc per aver corretto un errore di battitura nella documentazione di ActivityResult. (#221)
Versione 1.3.1
Versione 1.3.1
4 agosto 2021
androidx.activity:activity:1.3.1, androidx.activity:activity-compose:1.3.1 e androidx.activity:activity-ktx:1.3.1 sono stati rilasciati. La versione 1.3.1 contiene questi commit.
Aggiornamenti delle dipendenze
- L'attività ora dipende da Kotlin 1.5.21.
- Activity Compose ora dipende da Compose 1.0.1.
Versione 1.3.0
Versione 1.3.0
28 luglio 2021
androidx.activity:activity:1.3.0, androidx.activity:activity-compose:1.3.0 e androidx.activity:activity-ktx:1.3.0 sono stati rilasciati. La versione 1.3.0 contiene questi commit.
Modifiche importanti dalla versione 1.2.0
- Artefatto Activity Compose: l'artefatto activity-composefornisce il metodo di estensionesetContentper ospitare la tua UI Jetpack Compose in un'attività e wrapper specifici di Compose per interagire con le APIComponentActivityper la gestione del pulsante Indietro del sistema e delle API Activity Result. Per ulteriori dettagli, consulta la documentazione.
- Contratto CaptureVideo: CaptureVideoActivityResultContractsostituisce il contrattoTakeVideo, ora ritirato, e restituisce un valore booleano che indica la riuscita dell'operazione e funziona con molte app fotocamera.
- Monitoraggio della visualizzazione dei suggerimenti Picture in picture: gli utenti di activity-ktxora possono utilizzare il metodo di estensionetrackPipAnimationHintViewsuActivityper ricostruire automaticamentePictureInPictureParamscon la nuova posizione della visualizzazione quando cambia posizione rispetto alla finestra.
Versione 1.3.0-rc02
14 luglio 2021
androidx.activity:activity:1.3.0-rc02, androidx.activity:activity-compose:1.3.0-rc02 e androidx.activity:activity-ktx:1.3.0-rc02 sono stati rilasciati. La versione 1.3.0-rc02 contiene questi commit.
Correzioni di bug
- I callback ActivityResultRegistryora vengono salvati e ripristinati correttamente, in modo che non vengano duplicati in savedState. (I97816, b/191893160)
Versione 1.3.0-rc01
1° luglio 2021
androidx.activity:activity:1.3.0-rc01, androidx.activity:activity-compose:1.3.0-rc01 e androidx.activity:activity-ktx:1.3.0-rc01 vengono rilasciati senza modifiche rispetto a 1.3.0-beta02. La versione 1.3.0-rc01 contiene questi commit.
Versione 1.3.0-beta02
16 giugno 2021
androidx.activity:activity:1.3.0-beta02, androidx.activity:activity-compose:1.3.0-beta02 e androidx.activity:activity-ktx:1.3.0-beta02 sono stati rilasciati. La versione 1.3.0-beta02 contiene questi commit.
È stato effettuato un aggiornamento di activity-compose in modo che dipenda da Compose 1.0.0-beta09. androidx.compose.ui:ui-test-junit4 ora ha una dipendenza in fase di compilazione da activity-compose.
Versione 1.3.0-beta01
2 giugno 2021
androidx.activity:activity:1.3.0-beta01, androidx.activity:activity-compose:1.3.0-beta01 e androidx.activity:activity-ktx:1.3.0-beta01 sono stati rilasciati. La versione 1.3.0-beta01 contiene questi commit.
Modifiche alle API
- Il metodo @Composable registerForActivityResult()precedentemente deprecato è stato rimosso. UtilizzarememberLauncherForActivityResult(). (Ic39d3)
Versione 1.3.0-alpha08
18 maggio 2021
androidx.activity:activity:1.3.0-alpha08, androidx.activity:activity-compose:1.3.0-alpha08 e androidx.activity:activity-ktx:1.3.0-alpha08 sono stati rilasciati. La versione 1.3.0-alpha08 contiene questi commit.
Nuove funzionalità
- Il nuovo CaptureVideoActivityResultContractrestituisce un valore booleano aActivityResultCallbackche indica se il video è stato salvato correttamente nell'URI specificato. Questo sostituisce il contrattoTakeVideoora deprecato, in quanto le app per fotocamere supportavano molto raramente la restituzione di una bitmap miniatura, rendendo il risultato inutile. (Ie21f2, b/185938070)
- È stata aggiunta una nuova API Activity#setPipAnimationHintViewper aggiornare il suggerimento del rettangolo di origine di PipParams ogni volta che la visualizzazione si sposta. (I9063d)
Modifiche alle API
- La funzione rememberLauncherForActivityResultora restituisce un launcher che ritira la funzioneunregister(). La registrazione e l'annullamento della registrazione del launcher vengono gestiti automaticamente darememberLauncherForActivityResult. (I2443e)
Compatibilità di Composizione
- androidx.activity:activity-compose:1.3.0-alpha08è compatibile solo con Compose versione- 1.0.0-beta07e successive.
Versione 1.3.0-alpha07
21 aprile 2021
androidx.activity:activity:1.3.0-alpha07, androidx.activity:activity-compose:1.3.0-alpha07 e androidx.activity:activity-ktx:1.3.0-alpha07 sono stati rilasciati. La versione 1.3.0-alpha07 contiene questi commit.
Correzioni di bug
- rememberLauncherForActivityResultora restituisce un riferimento stabile alla stessa istanza- ActivityResultLauncheranche se il contratto cambia a causa delle ricomposizioni. (Id2d6d)
- L'utilizzo di versioni instabili di Fragment precedenti alla versione 1.3.0non genererà più un errore lint di falso positivo che ti invita a utilizzare1.3.0. (aosp/1670206, b/184847092)
Versione 1.3.0-alpha06
7 aprile 2021
androidx.activity:activity:1.3.0-alpha06, androidx.activity:activity-compose:1.3.0-alpha06 e androidx.activity:activity-ktx:1.3.0-alpha06 sono stati rilasciati. La versione 1.3.0-alpha06 contiene questi commit.
Modifiche alle API
- L'API registerForActivityResult()è stata rinominata inrememberLauncherForActivityResult()per indicare meglio cheActivityResultLauncherrestituito è un oggetto gestito che viene memorizzato per tuo conto. Il tentativo di chiamareunregisterrestituitoActivityResultLauncherora genererà un errore. (I2bb6d)
- LocalOnBackPressedDispatcherOwner.currente- LocalActivityResultRegistryOwner.currentora restituiscono un valore Null per determinare meglio se è disponibile nella composizione corrente. Le API che richiedono queste API, come- BackHandlere- rememberLauncherForActivityResult(), rispettivamente, ora genereranno un errore più descrittivo se il proprietario sottostante non viene trovato.- NavHostora funziona anche quando non viene trovato un- OnBackPressedDispatcherOwner, come nel caso dell'anteprima di- NavHost. (I7d8b4)
Correzioni di bug
- BackHandlerora intercetta correttamente i pulsanti Indietro nel caso in cui l'attività sia- STOPPED, poi- STARTEDdi nuovo e sono stati aggiunti altri callback con un LifecycleOwner. (I71de6, b/182284739)
- L'utilizzo dell'estensione del metodo launch()con unActivityResultContractpersonalizzato che ha un inputUnitnon causerà più unNullPointerException(I76282, b/183837954)
Versione 1.3.0-alpha05
24 marzo 2021
androidx.activity:activity:1.3.0-alpha05, androidx.activity:activity-compose:1.3.0-alpha05 e androidx.activity:activity-ktx:1.3.0-alpha05 sono stati rilasciati. La versione 1.3.0-alpha05 contiene questi commit.
Correzioni di bug
- Da Activity 1.2.2: è stato risolto un problema nel controllo lint InvalidFragmentVersionForActivityResultche causava un falso positivo quando si utilizzava Fragment 1.3.1 o versioni successive. (I54da1, b/182388985)
- A partire da Activity 1.2.2: ComponentActivityora evita unClassNotFoundExceptionquando avvia unIntentda unActivityResultContractprecedentemente considerato come extra in un altroIntent. (Ieff05, b/182906230)
Aggiornamenti delle dipendenze
- Da Activity 1.2.2: l'attività ora dipende dal ciclo di vita 2.3.1.
Versione 1.3.0-alpha04
10 marzo 2021
androidx.activity:activity:1.3.0-alpha04, androidx.activity:activity-compose:1.3.0-alpha04 e androidx.activity:activity-ktx:1.3.0-alpha04 sono stati rilasciati. La versione 1.3.0-alpha04 contiene questi commit.
Correzioni di bug
- Da Attività 1.2.1:RequestMultiplePermissionsora restituisce sempre risultati per tutte le autorizzazioni richieste anziché solo per quelle non concesse in precedenza. (I50bc3, b/180884668)
- Da Attività 1.2.1:ActivityResultRegistryora garantisce che le richiestelaunch()in corso restituiscano i risultati anche seunregister()e poiregister()di nuovo con la stessa chiave. (I9ef34, b/181267562)
- Activity Compose non aggiunge più dipendenze di test al classpath del runtime. (Ifd8b3)
- È stato risolto un problema con BackHandlerper cui la lambdaonBackimpostata in precedenza veniva ancora utilizzata dopo la ricomposizione. (8eb5eb)
Versione 1.3.0-alpha03
24 febbraio 2021
androidx.activity:activity:1.3.0-alpha03, androidx.activity:activity-compose:1.3.0-alpha03 e androidx.activity:activity-ktx:1.3.0-alpha03 sono stati rilasciati. La versione 1.3.0-alpha03 contiene questi commit.
Nuove funzionalità
- Ora è disponibile una funzione componibile registerForActivityResultper ottenere i risultati delle attività all'interno dei componenti componibili. (Ia7851, b/172690553)
Modifiche alle API
- LocalOnBackPressedDispatcherOwnerora dispone di- providesfunzioni che possono essere utilizzate con- CompositionLocalProvider, sostituendo l'API- asProvidableCompositionLocal(). (I45d24)
Versione 1.3.0-alpha02
10 febbraio 2021
androidx.activity:activity:1.3.0-alpha02, androidx.activity:activity-compose:1.3.0-alpha02 e androidx.activity:activity-ktx:1.3.0-alpha02 sono stati rilasciati. La versione 1.3.0-alpha02 contiene questi commit.
Correzioni di bug
- È stato corretto un problema in Activity Compose 1.3.0-alpha01che causa un'eccezioneNoSuchMethodError: No static method setContentquando viene utilizzato Compose1.0.0-alpha12. Tutti gli utenti di Compose devono dipendere da1.3.0-alpha02e versioni successive. (b/179911234)
Modifiche alle API
- L'API BackHandlerpuò essere utilizzata per consentire a un elemento componibile di intercettare il pulsante Indietro del sistema. (I58ed5, b/172154006)
Versione 1.3.0-alpha01
10 febbraio 2021
androidx.activity:activity:1.3.0-alpha01, androidx.activity:activity-compose:1.3.0-alpha01 e androidx.activity:activity-ktx:1.3.0-alpha01 sono stati rilasciati. La versione 1.3.0-alpha01 contiene questi commit.
Nuove funzionalità
- Il nuovo artefatto activity-composefornisce helper specifici di Jetpack Compose per le API specifiche diandroidx.activity.- ComponentActivity.setContentè stato spostato da- androidx.compose.ui.platform.setContenta- androidx.activity.compose.setContent. (Icf416)
 
Problemi noti
- L'utilizzo di Activity Compose 1.3.0-alpha01e delle librerie che dipendono da questa, comeandroidx.compose.ui:ui-test-junit4:1.0.0-alpha12, genererà un'eccezioneNoSuchMethodError: No static method setContent. (b/179911234)
Versione 1.2.4
Versione 1.2.4
21 luglio 2021
androidx.activity:activity:1.2.4 e androidx.activity:activity-ktx:1.2.4 sono stati rilasciati. La versione 1.2.4 contiene questi commit.
Correzioni di bug
- Da Activity 1.3.0-rc02: i callback di ActivityResultRegistry ora vengono salvati e ripristinati correttamente, in modo che non vengano duplicati in savedState. (I97816, b/191893160)
Versione 1.2.3
Versione 1.2.3
5 maggio 2021
androidx.activity:activity:1.2.3 e androidx.activity:activity-ktx:1.2.3 sono stati rilasciati. La versione 1.2.3 contiene questi commit.
Correzioni di bug
- L'utilizzo dell'estensione del metodo launch()con unActivityResultContractpersonalizzato che ha un inputUnitnon causerà più unNullPointerException(I76282, b/183837954)
- È stato corretto un errore di linting di falso positivo che ti invitava a utilizzare Fragment 1.3.0quando utilizzavi una build snapshot, alpha, beta o RC di una versione più recente di Fragments. (f4a57e, b/184847092)
Versione 1.2.2
Versione 1.2.2
24 marzo 2021
androidx.activity:activity:1.2.2 e androidx.activity:activity-ktx:1.2.2 sono stati rilasciati. La versione 1.2.2 contiene questi commit.
Correzioni di bug
- Risolto un problema nel controllo lint InvalidFragmentVersionForActivityResultche causava un falso positivo quando si utilizzava Fragment 1.3.1 o versioni successive. (I54da1, b/182388985)
- ComponentActivityora evita un- ClassNotFoundExceptionquando viene lanciato un- Intentda un- ActivityResultContractprecedentemente considerato un extra in un altro- Intent. (Ieff05, b/182906230)
Aggiornamenti delle dipendenze
- L'attività ora dipende dal ciclo di vita 2.3.1.
Versione 1.2.1
Versione 1.2.1
10 marzo 2021
androidx.activity:activity:1.2.1 e androidx.activity:activity-ktx:1.2.1 sono stati rilasciati. La versione 1.2.1 contiene questi commit.
Correzioni di bug
- RequestMultiplePermissionsora restituisce sempre risultati per tutte le autorizzazioni richieste anziché solo per quelle non concesse in precedenza. (I50bc3, b/180884668)
- ActivityResultRegistryora garantisce che le richieste- launch()in corso restituiscano i risultati anche se- unregister()e poi- register()di nuovo con la stessa chiave. (I9ef34, b/181267562)
Versione 1.2.0
Versione 1.2.0
10 febbraio 2021
androidx.activity:activity:1.2.0 e androidx.activity:activity-ktx:1.2.0 sono stati rilasciati. La versione 1.2.0 contiene questi commit.
Modifiche principali dalla versione 1.1.0
- API Activity Result: ComponentActivityora fornisce un'ActivityResultRegistryche ti consente di gestire i flussistartActivityForResult()+onActivityResult()erequestPermissions()+onRequestPermissionsResult()senza eseguire l'override dei metodi nell'attività o nel fragment, offre una maggiore sicurezza dei tipi tramiteActivityResultContracte fornisce hook per testare questi flussi. Consulta la sezione aggiornata Ottenere un risultato da un'attività.
- ContextAware:- ComponentActivityora implementa- ContextAware, consentendoti di aggiungere una o più istanze- OnContextAvailableListenerche riceveranno un callback prima del- Activity.onCreate()di base.- Un'estensione Kotlin di sospensione withContextAvailable()ti consente di eseguire un blocco non di sospensione quando il contesto diventa disponibile e restituire un risultato.
- Questa API viene utilizzata da FragmentActivitynel frammento 1.3.0 per ripristinare lo stato diFragmentManager. Tutti i listener aggiunti alle sottoclassi diFragmentActivityverranno eseguiti dopo questo listener.
- Questa API viene utilizzata da AppCompatActivityin AppCompat 1.3.0-alpha02 o versioni successive. Tutti i listener aggiunti alle sottoclassi diAppCompatActivityverranno eseguiti dopo questo listener.
 
- Un'estensione Kotlin di sospensione 
- ViewTreeSupporto:- ComponentActivityora supporta le API- ViewTreeLifecycleOwner.get(View),- ViewTreeViewModelStoreOwner.get(View)e- ViewTreeSavedStateRegistryOwneraggiunte in Lifecycle- 2.3.0e SavedState- 1.1.0in modo che restituisca l'attività come- LifecycleOwner,- ViewModelStoreOwnere- SavedStateRegistryOwnerper qualsiasi visualizzazione aggiunta direttamente a- ComponentActivity.
- Porting all'indietro di reportFullyDrawn(): il metodo ActivitydireportFullyDrawn()è stato sottoposto a porting all'indietro inComponentActivityper funzionare su tutti i livelli API, correggendo un arresto anomalo sull'API 19 e aggiungendo la tracciatura per questo metodo per tutti i livelli API.
Versione 1.2.0-rc01
16 dicembre 2020
androidx.activity:activity:1.2.0-rc01 e androidx.activity:activity-ktx:1.2.0-rc01 sono stati rilasciati. La versione 1.2.0-rc01 contiene questi commit.
Correzioni di bug
- ActivityResultRegistryora ripristina sempre lo stato esatto che è stato salvato. (Idd56b)
- Aggiungi il tracciamento a ComponentActivity.reportFullyDrawn(Ic7632)
Contributo esterno
- ComponentActivityora esegue l'override di- reportFullyDrawn(), consentendo la chiamata a tutti i livelli API e correggendo un arresto anomalo quando viene chiamato questo metodo senza l'autorizzazione di sistema appropriata sui dispositivi con API 19. Grazie, Simon Schiller. (b/163239764, #103)
Versione 1.2.0-beta02
2 dicembre 2020
androidx.activity:activity:1.2.0-beta02 e androidx.activity:activity-ktx:1.2.0-beta02 sono stati rilasciati. La versione 1.2.0-beta02 contiene questi commit.
Correzioni di bug
- Risolto un problema per cui l'API Activity Result
non attendeva che il ciclo di vita fosse STARTEDprima di fornire i risultati quando registrata con unLifecycle. (I109ea)
Contributo esterno
- È stata aggiornata la documentazione per launch()per indicare esplicitamente che può generare unActivityNotFoundException. Grazie Michał Zieliński. (aosp/1493580)
Versione 1.2.0-beta01
1° ottobre 2020
androidx.activity:activity:1.2.0-beta01 e androidx.activity:activity-ktx:1.2.0-beta01 sono stati rilasciati. La versione 1.2.0-beta01 contiene questi commit.
Correzioni di bug
- Ora - ActivityResultRegistrygenera numeri interi in modo casuale finché non ne trova uno non allocato da utilizzare come codice richiesta- register(), impedendo così il possibile overflow di numeri interi causato dall'incremento dei codici richiesta. (b/168779518)
- Lifecycleobservers are properly removed when calling- unregister()on an- ActivityResultLauncher. (b/165608393)
Modifiche al comportamento
- Ora ActivityResultRegistrygenera unIllegalStateExceptionquando tenta di chiamareregister()con unLifecycleOwneril cuiLifecycleha già raggiuntoSTARTED. (b/165435866)
Documentazione aggiornata
- I link alla documentazione di ContextAwarerimandano aLifecycleOwnerper evidenziare i callback diLifecyclecome il luogo appropriato per gli eventi di creazione ed eliminazione. (aosp/1414152)
Versione 1.2.0-alpha08
19 agosto 2020
androidx.activity:activity:1.2.0-alpha08 e androidx.activity:activity-ktx:1.2.0-alpha08 sono stati rilasciati. La versione 1.2.0-alpha08 contiene questi commit.
Nuove funzionalità
- ComponentActivityora implementa- ContextAware, consentendoti di aggiungere una o più istanze- OnContextAvailableListenerche riceveranno un callback prima della- Activity.onCreate()di base. (b/161390636)- Un'estensione Kotlin di sospensione withContextAvailable()ti consente di eseguire un blocco non di sospensione quando il contesto diventa disponibile e restituire un risultato. (I8290c)
- Questa API viene utilizzata da FragmentActivityin Fragment 1.3.0-alpha08 per ripristinare lo stato diFragmentManager. Tutti i listener aggiunti alle sottoclassi diFragmentActivityverranno eseguiti dopo questo listener. (I513da)
- Questa API viene utilizzata da AppCompatActivityin AppCompat 1.3.0-alpha02. Tutti i listener aggiunti alle sottoclassi diAppCompatActivityverranno eseguiti dopo questo listener. (I513da)
 
- Un'estensione Kotlin di sospensione 
Correzioni di bug
- È stato risolto un problema con il controllo ActivityResultFragmentVersionDetectorLint che causava l'interruzione quando si utilizzava Lint 27.1.0 o versioni successive. (b/162155191)
Versione 1.2.0-alpha07
22 luglio 2020
androidx.activity:activity:1.2.0-alpha07 e androidx.activity:activity-ktx:1.2.0-alpha07 sono stati rilasciati. La versione 1.2.0-alpha07 contiene questi commit.
Nuove funzionalità
- È stato aggiunto un nuovo controllo lint InvalidFragmentVersionForActivityResultche verifica che tu stia utilizzando Fragment1.3.0-alpha07quando utilizzi l'API Activity Result, evitando arresti anomali in fase di runtime dovuti a problemi di "codice richiesta non valido" e richieste di autorizzazione non funzionanti causate dall'utilizzo di versioni precedenti di Fragment. (b/152554847)
Contributo esterno
- È stato corretto un ArrayIndexOutOfBoundsExceptiondurante l'analisi dei risultati per il contrattoRequestPermissionActivity Result. (I8f9e3, b/161057605)
Versione 1.2.0-alpha06
10 giugno 2020
androidx.activity:activity:1.2.0-alpha06 e androidx.activity:activity-ktx:1.2.0-alpha06 sono stati rilasciati. La versione 1.2.0-alpha06 contiene questi commit.
Nuove funzionalità
- Ora puoi destrutturare la classe ActivityResultin Kotlin per accedere direttamente arequestCodeeintent. (b/157212935)
- ActivityResultLauncherora ti consente di ottenere l'- ActivityResultContractutilizzato per registrare il launcher. (b/156875743)
Modifiche alle API
- Modifica che causa interruzione: il metodo invoke()inActivityResultRegistryè stato rinominato inonLaunch(). (b/157496491)
- Il contratto OpenMultipleDocumentsora restituisce un elenco vuoto anzichénullal callback registrato se non viene restituito alcun risultato. (b/157348014)
Versione 1.2.0-alpha05
20 maggio 2020
androidx.activity:activity:1.2.0-alpha05 e androidx.activity:activity-ktx:1.2.0-alpha05 sono stati rilasciati. La versione 1.2.0-alpha05 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il supporto per ViewTreeViewModelStoreOwnerda Lifecycle2.3.0-alpha03eViewTreeSavedStateRegistryOwnerda SavedState1.1.0-alpha01quando si utilizza unViewall'interno di unComponentActivity. (aosp/1297993, aosp/1300264)
Modifiche alle API
- Il contratto TakePictureora restituisce unbooleanche indica la riuscita dell'operazione anziché una miniaturaBitmap, poiché questa era molto raramente supportata dalle app per fotocamere durante la scrittura dell'immagine nelUrifornito. (b/154302879)
- Le estensioni invoke()suActivityResultLaunchersono state rimosse a favore dell'utilizzo esplicito dilaunch()per indicare meglio che si tratta di operazioni asincrone. Le estensioni Kotlin perlaunchsono state aggiunte al pacchettoandroidx.activity.resultperActivityResultLauncher<Void>eActivityResultLauncher<Unit>che non richiedono di passarenulloUnit, rispettivamente, rispecchiando il comportamento delle estensioniinvoke()precedenti. (aosp/1304674, aosp/1304675)
- I metodi IntentSenderRequest.BuilderpersetFlagsMask()esetFlagsValues()sono stati combinati in un unico metodosetFlags(). (aosp/1302111)
Correzioni di bug
- Quando si registra un ActivityResultCallbackcon unLifecycleOwner, è stato risolto un problema per cui il callback veniva attivato prima che lo stato raggiungesseSTARTED. (aosp/1309744)
Modifiche al comportamento
- Ora ActivityResultRegistrygenera codici di richiesta a partire da0xFFFFanziché da0, evitando sovrapposizioni quando utilizzistartActivityForResult()orequestPermissions()in un'attività. (aosp/1302324)
Versione 1.2.0-alpha04
29 aprile 2020
androidx.activity:activity:1.2.0-alpha04 e androidx.activity:activity-ktx:1.2.0-alpha04 sono stati rilasciati. La versione 1.2.0-alpha04 contiene questi commit.
Nuove funzionalità
- È stato aggiunto un contratto che può chiamare startIntentSenderForResult alle API ActivityResult. (b/153007517)
Modifiche alle API
- Il metodo prepareCall()è stato rinominato inregisterForActivityResult(), sia inComponentActivityqui che in Fragment1.3.0-alpha04. (aosp/1278717)
- I contratti GetContents,OpenDocumentseRequestPermissionssono stati rinominati rispettivamenteGetMultipleContents,OpenMultipleDocumentseRequestMultiplePermissions. (aosp/1280161)
- ComponentActivityora implementa l'interfaccia- ActivityResultRegisteryOwner. (aosp/1290888)
- - Le API startActivityForResult()/onActivityResult()eonRequestPermissionsResult()suComponentActivitysono state ritirate. Utilizza le API Activity Result. (b/154751887)
Correzioni di bug
- Quando utilizzi i contratti GetMultipleContentseOpenMultipleDocumentse selezioni un singolo elemento, questo viene restituito correttamente al callback. (b/152941153)
Versione 1.2.0-alpha03
1° aprile 2020
androidx.activity:activity:1.2.0-alpha03 e androidx.activity:activity-ktx:1.2.0-alpha03 sono stati rilasciati. La versione 1.2.0-alpha03 contiene questi commit.
Nuove funzionalità
- Sono stati aggiunti i contratti TakeVideo,PickContact,GetContent,GetContents,OpenDocument,OpenDocuments,OpenDocumentTreeeCreateDocumentall'insieme di contratti predefiniti forniti daActivityResultContracts. (aosp/1262482, aosp/1266916, aosp/1268960)
- Le API Activity Result ora supportano l'avvio di un'attività per il risultato con un ActivityOptionsCompatfacoltativo. (b/151860054)
Modifiche alle API
- Il contratto TakePictureora accetta un inputUriper la posizione in cui deve essere archiviata l'immagine. Il contratto precedente che non accetta input è stato rinominato inTakePicturePreview. (aosp/1262482)
- Il metodo registerActivityResultCallback()suActivityResultRegistryè stato rinominato inregister(). (aosp/1267621)
- Il metodo dispose()suActivityResultLauncherè stato rinominato inunregister()eunregisterResultCallback()suActivityResultRegistryè stato rimosso. (aosp/1267621)
- Il metodo createIntent()diActivityResultContactora accetta unContextoltre all'input per consentire la creazione di intent espliciti. (aosp/1238800)
- Un ActivityResultContractora può ignoraregetSynchronousResult()per fornire un risultato senza chiamarestartActivityForResult. Viene utilizzato dai contrattiRequestPermissioneRequestPermissionsper fornire correttamente lo stato "Concesso" se le autorizzazioni richieste sono già state concesse. (b/151110799)
- Il contratto Dialprecedentemente disponibile è stato rimosso perchéIntentnon è destinato all'utilizzo constartActivityForResult(). (aosp/1266916)
- Molte delle API Activity Result che non sono pensate per essere estese ora sono final. Sono inclusigetActivityResultRegistry(), i metodiprepareCall(), tutti i metodi diActivityResultRegistrytranneinvoke()e una serie di contratti predefiniti che non supportano gli extra opzionali. (b/152439361)
Correzioni di bug
- È stato corretto un NullPointerExceptioninActivityResultRegistryquando si tentava di fornire risultati a un callback che non era ancora stato registrato nuovamente dopo una modifica alla configurazione.ActivityResultRegistryora conserva questi risultati in attesa e li fornisce quando il callback viene registrato nuovamente. (b/152137004)
Versione 1.2.0-alpha02
18 marzo 2020
androidx.activity:activity:1.2.0-alpha02 e androidx.activity:activity-ktx:1.2.0-alpha02 sono stati rilasciati. La versione 1.2.0-alpha02 contiene questi commit.
Nuove funzionalità
- ActivityResultRegistry: ComponentActivityora fornisce unActivityResultRegistryche consente di gestire i flussistartActivityForResult()+onActivityResult()erequestPermissions()+onRequestPermissionsResult()senza eseguire l'override dei metodi in Activity o Fragment, offre una maggiore sicurezza dei tipi tramiteActivityResultContracte fornisce hook per testare questi flussi. Consulta la sezione aggiornata Ottenere un risultato da un'attività. (b/125158199)
Versione 1.2.0-alpha01
4 marzo 2020
androidx.activity:activity:1.2.0-alpha01 e androidx.activity:activity-ktx:1.2.0-alpha01 sono stati rilasciati. La versione 1.2.0-alpha01 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il supporto per l'API ViewTreeLifecycleOwner.get(View)aggiunta in Lifecycle2.3.0-alpha01in modo che restituisca l'attività comeLifecycleOwnerper qualsiasi visualizzazione aggiunta direttamente all'attività. (aosp/1182955)
Correzioni di bug
- È stata corretta una regressione introdotta in Activity 1.1.0durante l'esecuzione su versioni precedenti della piattaforma in cuionBackPressed()causava unIllegalStateExceptiona causa di un bug inandroid.app.FragmentManager. (b/146290338)
Versione 1.1.0
Versione 1.1.0
22 gennaio 2020
androidx.activity:activity:1.1.0 è stato rilasciato.  La versione 1.1.0 contiene questi commit.
Modifiche importanti dalla versione 1.0.0
- Integrazione di Lifecycle ViewModel SavedState: SavedStateViewModelFactoryè ora la factory predefinita utilizzata quando si utilizzaby viewModels(), il costruttoreViewModelProvideroViewModelProviders.of()conComponentActivityo le relative sottoclassi.
Versione 1.1.0-rc03
4 dicembre 2019
androidx.activity:activity:1.1.0-rc03 e androidx.activity:activity-ktx:1.1.0-rc03 sono stati rilasciati.  La versione 1.1.0-rc03 contiene questi commit.
Modifiche alle dipendenze
- L'attività ora dipende da Lifecycle 2.2.0-rc03e Lifecycle ViewModel SavedState1.0.0-rc03.
Versione 1.1.0-rc02
7 novembre 2019
androidx.activity:activity:1.1.0-rc02 e androidx.activity:activity-ktx:1.1.0-rc02 sono stati rilasciati.  La versione 1.1.0-rc02 contiene questi commit.
Modifiche alle dipendenze
- L'attività ora dipende dal ciclo di vita 2.2.0-rc02.
Versione 1.1.0-rc01
23 ottobre 2019
androidx.activity:activity:1.1.0-rc01 e androidx.activity:activity-ktx:1.1.0-rc01 vengono rilasciati senza modifiche rispetto a 1.1.0-beta01.  La versione 1.1.0-rc01 contiene questi commit.
Versione 1.1.0-beta01
9 ottobre 2019
androidx.activity:activity:1.1.0-beta01 e androidx.activity:activity-ktx:1.1.0-beta01 sono stati rilasciati.  La versione 1.1.0-beta01 contiene questi commit.
Modifiche alle dipendenze
- L'attività ora dipende da SavedState 1.0.0 stabile.
Versione 1.1.0-alpha03
5 settembre 2019
androidx.activity:activity:1.1.0-alpha03 e androidx.activity:activity-ktx:1.1.0-alpha03 sono stati rilasciati.  I commit inclusi in questa versione sono disponibili qui.
Nuove funzionalità
- L'attività ora dipende dalla versione stabile di Core 1.1.0.
Correzioni di bug
- L'attività ora dipende dal ciclo di vita 2.2.0-alpha04.
Versione 1.1.0-alpha02
7 agosto 2019
androidx.activity:activity:1.1.0-alpha02 e androidx.activity:activity-ktx:1.1.0-alpha02 sono stati rilasciati.  I commit inclusi in questa versione sono disponibili qui.
Nuove funzionalità
- SavedStateViewModelFactoryè ora la fabbrica predefinita utilizzata quando si utilizza- by viewModels(), il costruttore- ViewModelProvidero- ViewModelProviders.of()con un- ComponentActivity(b/135716331)
Versione 1.1.0-alpha01
2 luglio 2019
androidx.activity:activity:1.1.0-alpha01 e androidx.activity:activity-ktx:1.1.0-alpha01 sono stati rilasciati.  I commit inclusi in questa versione sono disponibili qui.
Nuove funzionalità
- activityora dipende dal ciclo di vita- 2.2.0-alpha02. (aosp/1007817)
- activity-ktxha aggiunto una dipendenza da- lifecycle-runtime-ktx; non è più necessario aggiungerla esplicitamente alle dipendenze quando utilizzi- activity-ktxo librerie che dipendono da- activity-ktx(come- fragment-ktx). (aosp/987162)
Versione 1.0.0
Versione 1.0.0
5 settembre 2019
androidx.activity:activity:1.0.0 e androidx.activity:activity-ktx:1.0.0 sono stati rilasciati.  I commit inclusi in questa versione sono disponibili qui.
Funzionalità principali della versione 1.0.0
- ComponentActivity: ComponentActivityfunge da nuova classe base perFragmentActivityin Fragment1.1.0e, per estensione,AppCompatActivityin AppCompat1.1.0.
- activity-ktx: il modulo activity-ktxinclude un'estensione della proprietà Kotlinby viewModelsper accedere ai ViewModel. Questo modulo viene incluso automaticamente quando includifragment-ktxda Fragment1.1.0.
- OnBackPressedDispatcher: in alternativa componibile all'override di onBackPressed(), ora puoi registrare unOnBackPressedCallbackda qualsiasiLifecycleOwner(ad esempio un fragment) per intercettare gli eventi del pulsante Indietro del sistema. Aactivity-ktxè stata aggiunta una lambda con la versione del ricevitoreaddCallback. Per ulteriori dettagli, consulta la documentazione relativa alla fornitura della navigazione indietro personalizzata.
- onRetainCustomNonConfigurationInstance deprecation: le API onRetainCustomNonConfigurationInstance()egetLastCustomNonConfigurationInstance()correlate sono state ritirate. È consigliabile utilizzare ViewModel per archiviare lo stato non di configurazione, in quanto offrono una soluzione componibile adatta a qualsiasiViewModelStoreOwnerche rende chiara la proprietà degli oggetti conservati e fornisce un callbackonCleared()per la pulizia delle risorse quando l'attività viene definitivamente eliminata.
Versione 1.0.0-rc01
2 luglio 2019
androidx.activity:activity:1.0.0-rc01 e androidx.activity:activity-ktx:1.0.0-rc01 vengono rilasciati senza modifiche rispetto a 1.0.0-beta01.  I commit inclusi in questa versione sono disponibili qui.
Versione 1.0.0-beta01
5 giugno 2019
androidx.activity::activity:1.0.0-beta01 e androidx.activity:activity-ktx:1.0.0-beta01 vengono rilasciati senza modifiche rispetto a 1.0.0-alpha08.  I commit inclusi in questa versione sono disponibili qui.
Versione 1.0.0-alpha08
7 maggio 2019
androidx.activity:activity:1.0.0-alpha08 e androidx.activity:activity-ktx:1.0.0-alpha08 sono stati rilasciati.  I commit inclusi in questa versione sono disponibili qui.
Modifiche all'API
- Modifica che causa interruzione: i metodi addOnBackPressedCallbackeremoveOnBackPressedCallbackprecedentemente deprecati inComponentActivitysono stati rimossi. aosp/953857
- I metodi setEnabled()eisEnabled()diOnBackPressedCallbacksono ora definitivi. b/131416833
- Il metodo remove()diOnBackPressedCallbackè ora definitivo. aosp/952720
- OnBackPressedDispatcherora ha costruttori pubblici, che ti consentono di creare le tue istanze per i test e così via. aosp/953431
- onBackPressed()per- ComponentActivityè ora contrassegnato esplicitamente come- @MainThreadaosp/952721
Correzioni di bug
- È stato corretto un ConcurrentModificationExceptiondurante la chiamata aremove()dall'interno del metodohandleOnBackPressed()di unOnBackPressedCalbackaggiunto con unLifecycleOwner. b/131765095
Versione 1.0.0-alpha07
25 aprile 2019
androidx.activity:activity:1.0.0-alpha07 e androidx.activity:activity-ktx:1.0.0-alpha07 sono stati rilasciati.  I commit inclusi in questa versione sono disponibili qui.
Modifiche all'API
Questa release introduce modifiche significative alla gestione di onBackPressed(). Per ulteriori dettagli, consulta la documentazione aggiornata sul pulsante Indietro personalizzato.
- I metodi per OnBackPressedCallbackeOnBackPressedDispatchersono stati contrassegnati come@MainThread. (aosp/943813)
- Il metodo handleOnBackPressed()non restituisce più unboolean.OnBackPressedCallbackè ora una classe astratta che può essere attivata o disattivata.handleOnBackPressed()verrà chiamato solo quando il nuovo metodoisEnabled()restituisce true, in cui devi gestire il pulsante Indietro. (aosp/944518)
- I metodi addCallbackdiOnBackPressedDispatchernon restituiscono più un'istanzaCancellable.OnBackPressedCallbackora contengono un metodoremove()che soddisfa questa funzionalità, consentendoti di chiamareremove()durantehandleOnBackPressed(). (aosp/944519) (aosp/946316)
- activity-ktxora contiene un callback con ambito del ricevitore per- addCallbackche accetta una lambda che implementa- handleOnBackPressed()e ha accesso a- isEnablede- remove()(aosp/944520)
Versione 1.0.0-alpha06
3 aprile 2019
androidx.activity:activity:1.0.0-alpha06 e androidx.activity:activity-ktx:1.0.0-alpha06 sono stati rilasciati.  I commit inclusi in questa versione sono disponibili qui.
Modifiche all'API
- ComponentActivity ora contiene un secondo costruttore che accetta un @LayoutRes int, che sostituisce il comportamento precedente di annotare la classe AppCompatActivity con@ContentView. Questo approccio funziona sia nei moduli dell'app che in quelli della libreria. (b/128352521)
- Le API correlate a OnBackPressedCallbackin ComponentActivity sono state ritirate a favore della nuovaOnBackPressedDispatcher, recuperabile tramitegetOnBackPressedDispatcher(). (aosp/922523)
- I metodi per aggiungere un nuovo OnBackPressedCallbackaOnBackPressedDispatcherora restituiscono un oggettoCancellable, consentendo la rimozione del callback senza richiedere un riferimento esplicito aOnBackPressedDispatcher. (aosp/922523)
- L'aggiunta di un OnBackPressedCallbackcon unLifecycleOwnerassociato ora comporta l'aggiunta e la rimozione delOnBackPressedCallbackall'avvio e all'interruzione del ciclo di vita, rispettivamente. (aosp/922523)
Versione 1.0.0-alpha05
13 marzo 2019
androidx.activity:activity:1.0.0-alpha05 e
androidx.activity:activity-ktx:1.0.0-alpha05 sono stati rilasciati.  L'elenco completo dei commit
inclusi in questa release è disponibile qui.
Nuove funzionalità
- Le ricerche di annotazioni @ContentViewora vengono memorizzate nella cache (b/123709449)
Versione 1.0.0-alpha04
30 gennaio 2019
androidx.activity:activity 1.0.0-alpha04 e androidx.activity:activity-ktx 1.0.0-alpha04 sono stati rilasciati.
Nuove funzionalità
- È stato aggiunto il supporto per l'annotazione della classe @ContentView, che consente di indicare quale file XML di layout deve essere visualizzato come alternativa all'utilizzo disetContentView(). (aosp/837619)
Modifiche all'API
- È stata aggiunta una nota che indica che getViewModelStore()non deve essere sostituito e verrà reso definitivo in una versione futura. Se attualmente esegui l'override di questo metodo, invia una richiesta di funzionalità. (aosp/837619)
Correzioni di bug
- Il modulo activityora dipende dalla versione 2.1.0-alpha02 di ViewModel per corrispondere alla dipendenza del moduloactivity-ktx.
Versione 1.0.0-alpha03
17 dicembre 2018
androidx.activity 1.0.0-alpha03 è stato rilasciato.
Nuove funzionalità
- ComponentActivity ora implementa BundleSavedStateRegistryOwnere dipende dalla libreria SavedState appena rilasciata [aosp/815133]
- ComponentActivity ora aggira un bug del framework Android che causava la perdita dell'ultima visualizzazione attiva da parte di InputMethodManager [b/37122102]
Versione 1.0.0-alpha02
3 dicembre 2018
Modifiche all'API
- È stata aggiunta una nota che indica che getLifecycle()non deve essere sostituito e verrà resofinalin una versione futura. Se attualmente esegui l'override di questo metodo, invia una richiesta di funzionalità. (aosp/815834)
Versione 1.0.0-alpha01
5 novembre 2018
androidx.activity 1.0.0-alpha01 introduce
ComponentActivity, una nuova classe base delle classi esistenti FragmentActivity e
AppCompatActivity.
Nuove funzionalità
- Ora puoi registrare un OnBackPressedCallbacktramiteaddOnBackPressedCallbackper ricevere callbackonBackPressed()senza dover eseguire l'override del metodo nell'attività.
- È stato aggiunto un nuovo delegato di proprietà Kotlin by viewModels()per recuperareViewModelda unComponentActivity.
- Gli eventi di input in attesa (ad esempio i clic) ora vengono annullati in onStop().
Modifiche all'API
- L'implementazione di LifecycleOwnereViewModelStoreOwnerè stata spostata daFragmentActivityaComponentActivity.
- onRetainCustomNonConfigurationInstanceè stato ritirato. Utilizza un- ViewModelper archiviare gli oggetti che devono sopravvivere alle modifiche alla configurazione.
