Aktivität
| Letzte Aktualisierung | Stabile Release | Releasekandidat | Beta-Release | Alpha-Release |
|---|---|---|---|---|
| 23. September 2026 | 1.13.0 | - | - | 1.14.0-alpha03 |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von Activity hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie unter Google-Repository bei Maven.
Fügen Sie die Abhängigkeiten für die benötigten Artefakte in der Datei build.gradle für Ihre App oder Ihr Modul hinzu:
Cool
dependencies { def activity_version = "1.13.0" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
Kotlin
dependencies { val activity_version = "1.13.0" // Java language implementation implementation("androidx.activity:activity:$activity_version") // Kotlin implementation("androidx.activity:activity-ktx:$activity_version") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf den Button mit dem Stern.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Version 1.14
Version 1.14.0-alpha03
23. September 2026
androidx.activity:activity:1.14.0-alpha03, androidx.activity:activity-compose:1.14.0-alpha03 und androidx.activity:activity-ktx:1.14.0-alpha03 sind veröffentlicht. Version 1.14.0-alpha03 enthält diese Commits.
API-Änderungen
- Verwenden Sie
WindowCompat#enableEdgeToEdge(Window)anstelle vonEdgeToEdge#enable()(Ibff3e). - Die Überladungen des Material 2-Textfelds, die
value, onValueChange-Parameter akzeptieren, sind veraltet. Stellen Sie auf die Überladung um, dieTextFieldStateverwendet, um den Status zu übertragen. (I6b841, b/556234973)
Fehlerkorrekturen
- Die
androidx.lifecycle:lifecycle-runtime-Abhängigkeit wurde auf 2.10.0 aktualisiert. Diese Version ist erforderlich, damit gebündelte Lint-Prüfungen für den Lebenszyklus mit AGP-Version 9.5.0-alpha04 oder höher ausgeführt werden können. (I99bfd, b/556807521) ComponentActivitynewdefaultViewModelArgsunterstützt jetzt auch die Direct-Boot-Konfiguration. (I10a08)
Version 1.14.0-alpha02
9. September 2026
androidx.activity:activity:1.14.0-alpha02, androidx.activity:activity-compose:1.14.0-alpha02 und androidx.activity:activity-ktx:1.14.0-alpha02 sind veröffentlicht. Version 1.14.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
compileSdkfür Compose-Bibliotheken auf Version 37.1 aktualisiert. Dazu musscompileSdkfür alle Apps und Bibliotheken, die Compose verwenden, transitiv aktualisiert werden. (I05b0f)
Version 1.14.0-alpha01
26. August 2026
androidx.activity:activity:1.14.0-alpha01, androidx.activity:activity-compose:1.14.0-alpha01 und androidx.activity:activity-ktx:1.14.0-alpha01 sind veröffentlicht. Version 1.14.0-alpha01 enthält diese Commits.
API-Änderungen
- Intent-Extras werden
defaultViewModelCreationExtrasfür exportierte Aktivitäten nicht mehr automatisch hinzugefügt. Entwickler von exportierten Aktivitäten könnendefaultViewModelArgsüberschreiben, um explizit validierte Intent-Extras bereitzustellen. (Id0cb6, b/213646066) - Die Klasse „Activity“ bietet jetzt die Fabrikmethoden
NavigationEventDispatcherOwnerundOnBackPressedDispatcherOwner, mit denen sich die Instanzen der jeweiligen Komponenten einfach erstellen lassen. (I1d259, Iadd5c) OnBackPressedDispatcherbietet jetzt eineasNavigationEventDispatcher-Erweiterung, mit der sich das Format ganz einfach inNavigationEventDispatcherkonvertieren lässt. (Id11cf)
Version 1.13
Version 1.13.0
11. März 2026
androidx.activity:activity:1.13.0, androidx.activity:activity-compose:1.13.0 und androidx.activity:activity-ktx:1.13.0 sind veröffentlicht. Version 1.13.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.12.0:
ComponentActivityimplementiert jetzt dieOnPictureInPictureUiStateChangedProvider-Schnittstelle. Das bedeutet, dass sie jetzt in das neuecore:core-pip-Artefakt eingebunden werden kann, sodass jede Komponente Ereignisse für Statusänderungen der Bild-im-Bild-Benutzeroberfläche empfangen kann.EdgeToEdgewird jetzt bei Konfigurationsänderungen noch einmal aufgerufen, um sicherzustellen, dass die Farbe der Systemstatusleiste richtig aktualisiert wird.
Version 1.13.0-rc01
25. Februar 2026
androidx.activity:activity:1.13.0-rc01, androidx.activity:activity-compose:1.13.0-rc01 und androidx.activity:activity-ktx:1.13.0-rc01 sind veröffentlicht. Version 1.13.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Ab Activity 1.12.4: Die Foto- und Video-
ActivityResultContractswird jetzt korrekt gestartet, wenn sie auf Geräten mit den neuesten URI-Sicherheitskorrekturen verwendet wird. (I61201, b/433708587)
Version 1.13.0-alpha01
14. Januar 2026
androidx.activity:activity:1.13.0-alpha01, androidx.activity:activity-compose:1.13.0-alpha01 und androidx.activity:activity-ktx:1.13.0-alpha01 sind veröffentlicht. Version 1.13.0-alpha01 enthält diese Commits.
Neue Funktionen
EdgeToEdgewird jetzt bei Konfigurationsänderungen noch einmal aufgerufen, um sicherzustellen, dass die Farbe der Systemstatusleiste richtig aktualisiert wird. (Id1381, b/364713509)
API-Änderungen
ComponentActivityimplementiert jetzt dieOnPictureInPictureUiStateChangedProvider-Schnittstelle. Das bedeutet, dass sie jetzt in das neuecore:core-pip-Artefakt eingebunden werden kann, sodass jede Komponente Ereignisse für Statusänderungen der Bild-im-Bild-Benutzeroberfläche empfangen kann. (I4df5c, b/441310308)
Fehlerkorrekturen
- Aus Aktivität 1.12.2: Es wurde ein Problem behoben, bei dem das manuelle Festlegen von
isEnabledfür ein lebenszyklusbewusstesOnBackPressedCallbackdenLifecycle-Status überschrieb, was möglicherweise zu Abstürzen führte. (I7d898, b/461999811)
Version 1.12
Version 1.12.4
11. Februar 2026
androidx.activity:activity:1.12.4, androidx.activity:activity-compose:1.12.4 und androidx.activity:activity-ktx:1.12.4 sind veröffentlicht. Version 1.12.4 enthält diese Commits.
Fehlerkorrekturen
- Die
ActivityResultContracts-Schaltfläche für Fotos und Videos wird jetzt korrekt gestartet, wenn sie auf Geräten mit den neuesten URI-Sicherheitskorrekturen verwendet wird. (I61201, b/433708587)
Version 1.12.3
28. Januar 2026
androidx.activity:activity:1.12.3, androidx.activity:activity-compose:1.12.3 und androidx.activity:activity-ktx:1.12.3 sind veröffentlicht. Version 1.12.3 enthält diese Commits.
Version 1.12.2
17. Dezember 2025
androidx.activity:activity:1.12.2, androidx.activity:activity-compose:1.12.2 und androidx.activity:activity-ktx:1.12.2 sind veröffentlicht. Version 1.12.2 enthält diese Commits.
Fehlerkorrekturen
- Es wurde ein Problem behoben, bei dem das manuelle Festlegen von „isEnabled“ für ein lebenszyklusbewusstes
OnBackPressedCallbackden Lebenszyklusstatus überschrieb, was möglicherweise zu Abstürzen führte. (I7d898, b/461999811)
Version 1.12.1
3. Dezember 2025
androidx.activity:activity:1.12.1, androidx.activity:activity-compose:1.12.1 und androidx.activity:activity-ktx:1.12.1 sind veröffentlicht. Version 1.12.1 enthält diese Commits.
Aktualisierte Abhängigkeit
- Aktivität hängt jetzt von Navigation Event 1.0.1 ab
Version 1.12.0
19. November 2025
androidx.activity:activity:1.12.0, androidx.activity:activity-compose:1.12.0 und androidx.activity:activity-ktx:1.12.0 sind veröffentlicht. Version 1.12.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.11.0:
- Die
Androidx Activity-Bibliothek ist jetzt von der neuenNavigationEvent-Bibliothek abhängig. Dazu gehört die Unterstützung vonNavigationEventDispatcherinComponentActivityundComponentDialog. DieOnBackPressed-APIs wurden ebenfalls auf Grundlage derNavigationEvent-APIs neu geschrieben, um die Abwärtskompatibilität mit der vorherigen Bibliothek zu gewährleisten.
Version 1.12.0-rc01
5. November 2025
androidx.activity:activity:1.12.0-rc01, androidx.activity:activity-compose:1.12.0-rc01 und androidx.activity:activity-ktx:1.12.0-rc01 sind veröffentlicht. Version 1.12.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Laufzeitfehler für
BackHandlerundPredictiveBackHandlerin Apps mit benutzerdefinierten Activity-Klassen beheben Diese Composables greifen jetzt sicher aufLocalOnBackPressedDispatcherOwnerzurück, während die Reihenfolge der Dispatch-Vorgänge in Apps, dieNavigationEventDispatcherOwnerunterstützen, beibehalten wird. (I43873)
Version 1.12.0-beta01
22. Oktober 2025
androidx.activity:activity:1.12.0-beta01, androidx.activity:activity-compose:1.12.0-beta01 und androidx.activity:activity-ktx:1.12.0-beta01 sind veröffentlicht. Version 1.12.0-beta01 enthält diese Commits.
API-Änderungen
- Einführung der experimentellen
ActivityFlagsAPI zur Verwaltung von Änderungen am Laufzeitverhalten und Migrationen. Das erste Flag ermöglicht eine stabile Reihenfolge fürOnBackPressedCallback, wodurch die Rückwärtsnavigation bei Änderungen des Lebenszyklus besser vorhersehbar wird. Entwickler können die Funktion deaktivieren, indem sieActivityFlags.isOnBackPressedLifecycleOrderMaintained = falsefestlegen. (I06bdf, Id08bb, I439aa, b/422730945, b/450533622)
Abhängigkeitsupdate
- Aktualisieren Sie die Abhängigkeiten für den Kundenlebenszyklus auf Version 2.9.4 (Ic9fb2).
Version 1.12.0-alpha09
24. September 2025
androidx.activity:activity:1.12.0-alpha09, androidx.activity:activity-compose:1.12.0-alpha09 und androidx.activity:activity-ktx:1.12.0-alpha09 sind veröffentlicht. Version 1.12.0-alpha09 enthält diese Commits.
Änderungen an Abhängigkeiten
- Die Aktivität hängt jetzt von Navigation Event 1.0.0-alpha08 ab.
Version 1.12.0-alpha08
10. September 2025
androidx.activity:activity:1.12.0-alpha08, androidx.activity:activity-compose:1.12.0-alpha08 und androidx.activity:activity-ktx:1.12.0-alpha08 sind veröffentlicht. Version 1.12.0-alpha08 enthält diese Commits.
Abhängigkeitsupdate
- Die Aktivität hängt jetzt von Navigation Event 1.0.0-alpha08 ab.
Version 1.12.0-alpha07
27. August 2025
androidx.activity:activity:1.12.0-alpha07, androidx.activity:activity-compose:1.12.0-alpha07 und androidx.activity:activity-ktx:1.12.0-alpha07 sind veröffentlicht. Version 1.12.0-alpha07 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem mit
EdgeToEdgeauf API 35 wurde behoben, bei dem unsichtbare Ansichten zu unerwarteten Mess-Insets geführt haben. (If49ff)
Abhängigkeitsupdate
- Die Aktivität hängt jetzt vom Navigationsereignis
1.0.0-alpha07ab.
Version 1.12.0-alpha06
13. August 2025
androidx.activity:activity:1.12.0-alpha06, androidx.activity:activity-compose:1.12.0-alpha06 und androidx.activity:activity-ktx:1.12.0-alpha06 sind veröffentlicht. Version 1.12.0-alpha06 enthält diese Commits.
MinSdk-Update
- Der Standardwert
minSdkfür AndroidX wurde von API 21 auf API 23 verschoben (Ibdfca, b/380448311, b/435705964, b/435705223).
Updates für die Dokumentation
- Aktualisierte KDocs für
PredictiveBackHandler, um auf ein bekanntes Timing-Problem hinzuweisen, bei dem eine Touchgeste im selben Frame verarbeitet werden kann, in dem sie deaktiviert wird. (I5be5c, b/431534103) - Die KDocs für
BackHandlerundPredictiveBackHandlerwurden aktualisiert, um das Verhalten „last composed wins“ (zuletzt zusammengesetzt gewinnt) explizit zu erwähnen und die bedingungslose Zusammensetzung mit dem Flagenabledzu empfehlen. (I7ab94)
Abhängigkeitsupdate
- Die Aktivität hängt jetzt vom Navigationsereignis
1.0.0-alpha06ab.
Version 1.12.0-alpha05
30. Juli 2025
androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05 und androidx.activity:activity-ktx:1.12.0-alpha05 sind veröffentlicht. Version 1.12.0-alpha05 enthält diese Commits.
Abhängigkeitsupdate
- Die Aktivität hängt jetzt vom Navigationsereignis
1.0.0-alpha05ab.
Version 1.12.0-alpha04
2. Juli 2025
androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04 und androidx.activity:activity-ktx:1.12.0-alpha04 sind veröffentlicht. Version 1.12.0-alpha04 enthält diese Commits.
Änderungen an Abhängigkeiten
- Aktivität hängt jetzt von NavigationEvent Alpha04 ab
Version 1.12.0-alpha03
18. Juni 2025
androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03 und androidx.activity:activity-ktx:1.12.0-alpha03 sind veröffentlicht. Version 1.12.0-alpha03 enthält diese Commits.
Fehlerkorrekturen
OnBackPressedDispatcherundNavigationEventDispatcherwerden jetzt beide verzögert inComponentActivityinitialisiert. (I710e6)Probleme mit
OnBackPressedDistpatcherwurden behoben, die Folgendes verursacht haben:- Nur der letzte Dispatcher für
OnBackPressedCallbackwurde hinzugefügt, um über den aktivierten Status benachrichtigt zu werden (b/418715930). OnBackPressedDispatcherentfernt den falschen Callback, wenn dieaddCallback-Funktion verwendet wird, die einen Lebenszyklus akzeptiert. (b/422714753)- Mit
OnBackPressedDispatcher.remove()werden nicht alle Instanzen einer registriertenOnBackPressedCallbackentfernt. (b/423024414)
- Nur der letzte Dispatcher für
Version 1.12.0-alpha02
4. Juni 2025
androidx.activity:activity:1.12.0-alpha02, androidx.activity:activity-compose:1.12.0-alpha02 und androidx.activity:activity-ktx:1.12.0-alpha02 sind veröffentlicht. Version 1.12.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Aus NavigationEvent
1.0.0-alpha02: EinConcurrentModificationExceptionwurde behoben, das auftreten konnte, wennNavigationEventCallback.remove()aufgerufen wurde, weil die interne Liste der Closeables gleichzeitig geändert wurde. (I63066)
Version 1.12.0-alpha01
20. Mai 2025
androidx.activity:activity:1.12.0-alpha01, androidx.activity:activity-compose:1.12.0-alpha01 und androidx.activity:activity-ktx:1.12.0-alpha01 sind veröffentlicht. Version 1.12.0-alpha01 enthält diese Commits.
Neue Funktionen
ComponentActivityundComponentDialogwurden über dieNavigationEventDispatcherOwnerAPI in NavigationEvent1.0.0-alpha01eingebunden. Sie können jetzt über das FeldnavigationEventDispatchereineNavigationEventDispatcheraus IhremComponentActivityabrufen. Da dieOnBackPressedDispatcherauf der Grundlage der neuen Bibliothek neu geschrieben wurde, sollten alle bisherigen Verwendungen weiterhin korrekt funktionieren. Sie sollten in ZukunftNavigationEventDispatcherundNavigationEventCallbackverwenden. (Ib8eed, I6cc44, Ib7724, I9a0f7,b/412597031, b/415028038, b/412596729, b/412597140, b/412596012)
Version 1.11
Version 1.11.0
10. September 2025
androidx.activity:activity:1.11.0, androidx.activity:activity-compose:1.11.0 und androidx.activity:activity-ktx:1.11.0 sind veröffentlicht. Version 1.11.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.10.0:
- Die
MediaCapabilitiesAPI wurdePickVisualMediaRequesthinzugefügt, damit Anwendungen ihre Media-Funktionen wie unterstützte HDR-Typen angeben können. - Aktivitäten werden jetzt mit API 36 kompiliert.
Version 1.11.0-rc01
23. April 2025
androidx.activity:activity:1.11.0-rc01, androidx.activity:activity-compose:1.11.0-rc01 und androidx.activity:activity-ktx:1.11.0-rc01 sind veröffentlicht. Version 1.11.0-rc01 enthält diese Commits.
Version 1.11.0-beta01
09. April 2025
androidx.activity:activity:1.11.0-beta01, androidx.activity:activity-compose:1.11.0-beta01 und androidx.activity:activity-ktx:1.11.0-beta01 sind veröffentlicht. Version 1.11.0-beta01 enthält diese Commits.
Version 1.11.0-alpha02
26. März 2025
androidx.activity:activity:1.11.0-alpha02, androidx.activity:activity-compose:1.11.0-alpha02 und androidx.activity:activity-ktx:1.11.0-alpha02 sind veröffentlicht. Version 1.11.0-alpha02 enthält diese Commits.
API-Änderungen
- Die neuen
EDGE_NONE- undframeTimeMillis-Funktionen aus Android 16 Beta03 wurden in dieBackEventCompat-Funktion integriert, die von denhandleOnBackStarted- undhandleOnBackProgressed-Funktionen vonOnBackPressedCallbackbereitgestellt wird.
Abhängigkeitsupdates
- Aktivitäten werden jetzt mit API 36 kompiliert. (I510e8, b/301910674)
Version 1.11.0-alpha01
12. März 2025
androidx.activity:activity:1.11.0-alpha01, androidx.activity:activity-compose:1.11.0-alpha01 und androidx.activity:activity-ktx:1.11.0-alpha01 sind veröffentlicht. Version 1.11.0-alpha01 enthält diese Commits.
Neue Funktionen
- Die
MediaCapabilitiesAPI wurdePickVisualMediaRequesthinzugefügt, damit Anwendungen ihre Media-Funktionen wie unterstützte HDR-Typen angeben können. (Ic3ee7)
Version 1.10
Version 1.10.1
26. Februar 2025
androidx.activity:activity:1.10.1, androidx.activity:activity-compose:1.10.1 und androidx.activity:activity-ktx:1.10.1 sind veröffentlicht. Version 1.10.1 enthält diese Commits.
Fehlerkorrekturen
ViewTreeOnBackPressedDispatcherOwnersundFullyDrawnReporterOwnerskönnen jetzt über disjunkte Eltern einer Ansicht, z. B. eineViewOverlay, aufgelöst werden. Weitere Informationen zu disjunkten Ansichtseltern finden Sie in den Versionshinweisen von Core oder in der Dokumentation inViewTree.setViewTreeDisjointParent. (Ie7750)
Version 1.10.0
15. Januar 2025
androidx.activity:activity:1.10.0, androidx.activity:activity-compose:1.10.0 und androidx.activity:activity-ktx:1.10.0 sind veröffentlicht. Version 1.10.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.9.0
- In
PhotoPickerkönnen Sie jetzt Bilder in der gewünschten Reihenfolge auswählen und festlegen, welcher Tab (entweder „Alben“ oder „Bilder“) zuerst angezeigt werden soll. - Die Activity Result Contracts
PickVisualMediaundPickMultipleVisualMedia, die die Bildauswahl auslösen, werden nicht mehr direkt an Google Play-Dienste delegiert, wenn die Systembildauswahl nicht verfügbar ist. Stattdessen wird die öffentliche AktionACTION_SYSTEM_FALLBACK_PICK_IMAGESund die zugehörigen Extras verwendet, um OEMs und System-Apps eine einheitliche Bildauswahl als Fallback zu bieten. - Eine neue lokale
LocalActivity-Komposition, die dieActivityfür den aktuellen Bereich bereitstellt. Entwickler müssen dieActivitynicht mehr von derLocalContextabrufen.
Version 1.10.0-rc01
11. Dezember 2024
androidx.activity:activity:1.10.0-rc01, androidx.activity:activity-compose:1.10.0-rc01 und androidx.activity:activity-ktx:1.10.0-rc01 sind veröffentlicht. Version 1.10.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Es wurde ein Problem behoben, bei dem das Ändern des aktivierten Status, während
PredictiveBackHandleraktiv ist, den Callback sofort unterbrechen würde. Der aktuelle Callback wird jetzt abgeschlossen, unabhängig davon, ob sich der Status ändert. (Ib8719)
Version 1.10.0-beta01
13. November 2024
androidx.activity:activity:1.10.0-beta01, androidx.activity:activity-compose:1.10.0-beta01 und androidx.activity:activity-ktx:1.10.0-beta01 werden ohne Änderungen seit der letzten Alphaversion veröffentlicht. Version 1.10.0-beta01 enthält diese Commits.
Version 1.10.0-alpha03
30. Oktober 2024
androidx.activity:activity:1.10.0-alpha03, androidx.activity:activity-compose:1.10.0-alpha03 und androidx.activity:activity-ktx:1.10.0-alpha03 sind veröffentlicht. Version 1.10.0-alpha03 enthält diese Commits.
API-Änderungen
- Es wurde eine neue lokale
LocalActivity-Komposition hinzugefügt, die dieActivityfür den aktuellen Bereich bereitstellt. Entwickler müssen dieActivitynicht mehr von derLocalContextabrufen. Außerdem ist eine neue Lint-Regel enthalten, die prüft, obLocalContextfälschlicherweise inActivityumgewandelt wird. (I7746a, b/283009666)
Fehlerkorrekturen
- Über Aktivität
1.9.3: Der Callback vonPredictiveBackHandlerwird nicht mehr ausgelöst, nachdem der Handler deaktiviert wurde. Damit wird ein Problem behoben, bei dem dieNavHostaus Navigation Compose eineIndexOutOfBoundsExceptionausgelöst hat. (I3f75e, b/365027664, b/340202286)
Abhängigkeitsupdate
- Activity Compose hängt jetzt von Compose Runtime 1.7.0 ab (I7746a, b/283009666)
Version 1.10.0-alpha02
4. September 2024
androidx.activity:activity:1.10.0-alpha02, androidx.activity:activity-compose:1.10.0-alpha02 und androidx.activity:activity-ktx:1.10.0-alpha02 sind veröffentlicht. Version 1.10.0-alpha02 enthält diese Commits.
Geändertes Verhalten
- Die Activity Result Contracts
PickVisualMediaundPickMultipleVisualMedia, die die Bildauswahl auslösen, werden nicht mehr direkt an Google Play-Dienste delegiert, wenn die Systembildauswahl nicht verfügbar ist. Stattdessen wird die öffentliche AktionACTION_SYSTEM_FALLBACK_PICK_IMAGESund die zugehörigen Extras verwendet, um OEMs und System-Apps eine einheitliche Bildauswahl als Fallback zu bieten. Dies sollte keine Auswirkungen auf die Nutzerfreundlichkeit von Geräten mit einer aktuellen Version der Google Play-Dienste haben. (I3513d)
Fehlerkorrekturen
- Die manuelle Beschreibung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies automatisch über die API-Modellierung erfolgt, wenn R8 mit AGP 7.3 oder höher verwendet wird (z. B. R8-Version 3.3), und für alle Builds, wenn AGP 8.1 oder höher verwendet wird (z. B. D8-Version 8.1). Clients, die AGP nicht verwenden, wird empfohlen, auf D8-Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (I9496c, b/345472586)
- Ab Activity
1.9.2: Es wurde ein Problem behoben, bei dem die Activity Compose-APIPredictiveBackHandlerweiterhin die System-Zurück-Geste im Frame verarbeitet hat, in dem sie deaktiviert wurde. Dies konnte dazu führen, dass Bibliotheken wie Navigation Compose „Zurück“ auch bei einem leeren Backstack verarbeitet haben, was zu einemIndexOutOfBoundsExceptiongeführt hat. (Ie3301, b/340202286) - Aktivität
1.9.1:PredictiveBackHandlerEs wurde ein Problem behoben, bei dem nach dem Ausführen von „System zurücksetzen“ der Versuch,onBackPressedüber dieOnBackPressedDispatcherauszuführen, fehlschlug. (I5f1f8)
Version 1.10.0-alpha01
26. Juni 2024
androidx.activity:activity:1.10.0-alpha01, androidx.activity:activity-compose:1.10.0-alpha01 und androidx.activity:activity-ktx:1.10.0-alpha01 sind veröffentlicht. Diese Version wird in einem internen Zweig entwickelt.
Neue Funktionen
- Unterstützung für neue
PhotoPicker-Funktionen in Android V hinzugefügt, z. B. die Möglichkeit, Bilder in einer bestimmten Reihenfolge auszuwählen und festzulegen, welcher Tab (entweder „Alben“ oder „Bilder“) zuerst angezeigt werden soll.
Version 1.9
Version 1.9.3
16. Oktober 2024
androidx.activity:activity:1.9.3, androidx.activity:activity-compose:1.9.3 und androidx.activity:activity-ktx:1.9.3 sind veröffentlicht. Version 1.9.3 enthält diese Commits.
Fehlerkorrekturen
PredictiveBackHandlerlöst den Callback nicht mehr aus, nachdem der Handler deaktiviert wurde. Damit wird ein Problem behoben, bei dem dieNavHostaus Navigation Compose eineIndexOutOfBoundsExceptionausgelöst hat. (I3f75e, b/340202286)
Version 1.9.2
4. September 2024
androidx.activity:activity:1.9.2, androidx.activity:activity-compose:1.9.2 und androidx.activity:activity-ktx:1.9.2 sind veröffentlicht. Version 1.9.2 enthält diese lthcocommits.
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem die Activity Compose-API
PredictiveBackHandlerweiterhin die System-Zurück-Geste im Frame verarbeitet hat, in dem sie deaktiviert wurde. Dies konnte dazu führen, dass Bibliotheken wie Navigation Compose „Zurück“ auch bei einem leeren Backstack verarbeitet haben, was zu einerIndexOutOfBoundsExceptiongeführt hat. (Ie3301, b/340202286)
Version 1.9.1
24. Juli 2024
androidx.activity:activity:1.9.1, androidx.activity:activity-compose:1.9.1 und androidx.activity:activity-ktx:1.9.1 sind veröffentlicht. Version 1.9.1 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem mit
PredictiveBackHandlerwurde behoben. Nach dem Ausführen von schlug der Versuch,onBackPressedüberOnBackPressedDispatcherauszuführen, fehl. (I5f1f8)
Version 1.9.0
17. April 2024
androidx.activity:activity:1.9.0, androidx.activity:activity-compose:1.9.0 und androidx.activity:activity-ktx:1.9.0 sind veröffentlicht. Version 1.9.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.8.0
- In
ComponentActivitywird jetztOnUserLeaveHintProviderimplementiert, damit Komponenten Callbacks füronUserLeaveHint-Ereignisse verwenden können. - Die APIs
OnBackPressedCallback,BackHandlerundPredictiveBackHandlergeben jetzt eine Warnung aus, wennonBackPressedDispatcher.onBackPressed()beim Zurückgehen aufgerufen wird, da dies immer die Predictive Back Animation unterbricht. Weitere Informationen finden Sie im Leitfaden für Best Practices. - Die restlichen Activity-APIs wurden in Kotlin neu geschrieben und alle Erweiterungen, die zuvor in
activity-ktxverfügbar waren, wurden nachactivityverschoben.activity-ktxist jetzt vollständig leer.- Im Rahmen der Konvertierung von
ActivityResultLauncherzu Kotlin ist die MethodegetContractjetzt eine abstrakte Kotlin-Property. Dies ist eine binärkompatible Änderung, aber eine Quellcode-inkompatible Änderung, wenn Ihre Implementierung vonActivityResultLauncherin Kotlin geschrieben ist.
- Im Rahmen der Konvertierung von
Version 1.9.0-rc01
3. April 2024
androidx.activity:activity:1.9.0-rc01, androidx.activity:activity-compose:1.9.0-rc01 und androidx.activity:activity-ktx:1.9.0-rc01 sind veröffentlicht. Version 1.9.0-rc01 enthält diese Commits.
Abhängigkeitsupdate
- Die Aktivität hängt jetzt von Profile Installer 1.3.1 ab.
Version 1.9.0-beta01
20. März 2024
androidx.activity:activity:1.9.0-beta01, androidx.activity:activity-compose:1.9.0-beta01 und androidx.activity:activity-ktx:1.9.0-beta01 sind veröffentlicht. Version 1.9.0-beta01 enthält diese Commits.
Fehlerkorrekturen
- Es wurde ein Problem mit der Leistung beim Starten von Aktivitäten behoben, das in Aktivität
1.9.0-alpha02eingeführt wurde und durch den Aufruf vonOnBackPressedDispatcherbei der Erstellung der Aktivität verursacht wurde. (Ie75e3)
Version 1.9.0-alpha03
7. Februar 2024
androidx.activity:activity:1.9.0-alpha03, androidx.activity:activity-compose:1.9.0-alpha03 und androidx.activity:activity-ktx:1.9.0-alpha03 sind veröffentlicht. Version 1.9.0-alpha03 enthält diese Commits.
Lint-Warnung
- Die APIs
OnBackPressedCallback,BackHandlerundPredictiveBackHandlergeben jetzt eine Warnung aus, wennonBackPressedDispatcher.onBackPressed()beim Zurückgehen aufgerufen wird, da dies immer die Predictive Back Animation unterbricht. Weitere Informationen finden Sie im Leitfaden mit Best Practices. (1e4222, 2c950d, b/287505200)
Fehlerkorrekturen
- Wenn ein „Zurück“-Ereignis vom System gesendet wird, das während einer bereits laufenden Vorhersage-Geste „Zurück“ gestartet wurde, wird die aktuell laufende Vorhersage-Geste „Zurück“ abgebrochen und das neue „Zurück“-Ereignis übernimmt, um eine neue Vorhersage-Geste „Zurück“ zu starten. (I3482e)
- Ein Absturz wurde behoben, der auftrat, wenn zum ersten Mal über einen Hintergrundthread auf
onBackPressedDispatchervon einemComponentActivityaus zugegriffen wurde. Es ist jetzt sicher, aufonBackPressedDispatcherin einem beliebigen Thread zuzugreifen. (I79955)
Version 1.9.0-alpha02
24. Januar 2024
androidx.activity:activity:1.9.0-alpha02, androidx.activity:activity-compose:1.9.0-alpha02 und androidx.activity:activity-ktx:1.9.0-alpha02 sind veröffentlicht. Version 1.9.0-alpha02 enthält diese Commits.
Kotlin-Conversions
ActivityResultRegistrywurde in Kotlin neu geschrieben. So wird sichergestellt, dass die Null-Zulässigkeit der Generics im anregisterübergebenen Vertrag korrekt an die an Sie zurückgegebeneActivityResultLauncherweitergegeben wird. (I121f0)ActivityResultwurde in Kotlin neu geschrieben. DieActivityResult-Kotlin-Erweiterungen, die das Destrukturieren in die FelderresultCodeunddataunterstützen, wurden vonactivity-ktxnachactivityverschoben. (I0565a)- Die Kotlin-Erweiterungen von
by viewModels()fürComponentActivityundtrackPipAnimationHintViewwurden vonactivity-ktxnachactivityverschoben. Das Artefaktactivity-ktxist jetzt vollständig leer. (I0a444)
Fehlerkorrekturen
- Die
enableEdgeToEdgeAPI rendert jetzt um alle Displayausschnitte herum. (a3644b, b/311173461) - Aktivität
1.8.2: Der an den Photo Picker Activity ContractACTION_SYSTEM_FALLBACK_PICK_IMAGESübergebene Extra wurde korrigiert, sodass derEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX-Schlüssel korrekt übergeben wird und nicht der Extra mit dem Schlüssel"com.google.android.gms.provider.extra.PICK_IMAGES_MAX"verwendet wird. Wenn Sie ein OEM sind, der eine System-Fallback-Bildauswahl implementiert, wird dringend empfohlen, beide Extras zu unterstützen, um eine möglichst breite Kompatibilität zu gewährleisten. (I96a00)
Version 1.9.0-alpha01
29. November 2023
androidx.activity:activity:1.9.0-alpha01, androidx.activity:activity-compose:1.9.0-alpha01 und androidx.activity:activity-ktx:1.9.0-alpha01 sind veröffentlicht. Version 1.9.0-alpha01 enthält diese Commits.
Neue Funktionen
- In
ComponentActivitywird jetztOnUserLeaveHintProviderimplementiert, damit Komponenten Callbacks füronUserLeaveHint-Ereignisse verwenden können. (I54892)
API-Änderungen
ComponentActivitywurde in Kotlin neu geschrieben. (I14f31)ActivityResultCallerwurde in Kotlin neu geschrieben. (Ib02e4)ActivityResultLauncherwurde in Kotlin neu geschrieben. Im Rahmen dieser Umstellung ist die MethodegetContractjetzt eine abstrakte Kotlin-Eigenschaft. Dies ist eine binärkompatible Änderung, aber eine Quellcodeänderung, wenn Ihre Implementierung vonActivityResultLauncherin Kotlin geschrieben ist. (Id4615)PickVisualMediaRequesthat jetzt dasselbe Mindest-API-Level von 19 wie derPickVisualMedia-Vertrag für Aktivitätsergebnisse. (Id6e21)
Abhängigkeitsupdate
- Die Aktivität hängt jetzt von Core
1.13.0-alpha01ab. (I14f31)
Version 1.8
Version 1.8.2
13. Dezember 2023
androidx.activity:activity:1.8.2, androidx.activity:activity-compose:1.8.2 und androidx.activity:activity-ktx:1.8.2 sind veröffentlicht. Version 1.8.2 enthält diese Commits.
Fehlerkorrekturen
- Der an
ACTION_SYSTEM_FALLBACK_PICK_IMAGESdes Photo Picker Activity Contract übergebene Extra wurde korrigiert, sodass der SchlüsselEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAXanstelle des Extras mit dem Schlüssel"com.google.android.gms.provider.extra.PICK_IMAGES_MAX"übergeben wird. Wenn Sie ein OEM sind, der eine System-Fallback-Bildauswahl implementiert, wird dringend empfohlen, beide Extras zu unterstützen, um eine möglichst breite Kompatibilität zu gewährleisten. (I96a00)
Version 1.8.1
15. November 2023
androidx.activity:activity:1.8.1, androidx.activity:activity-compose:1.8.1 und androidx.activity:activity-ktx:1.8.1 sind veröffentlicht. Version 1.8.1 enthält diese Commits.
Fehlerkorrekturen
OnBackPressedDispatcherleitet jetzt auch dann an das richtigeOnBackPressedCallbackweiter, wenn während der Verarbeitung der Zurück-Geste ein neuesOnBackPressedCallbackhinzugefügt wird. (Id0ff6)
Version 1.8.0
4. Oktober 2023
androidx.activity:activity:1.8.0, androidx.activity:activity-compose:1.8.0 und androidx.activity:activity-ktx:1.8.0 sind veröffentlicht. Version 1.8.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.7.0
- Intelligente „Zurück“-Geste: Das
OnBackPressedCallbackbietet jetzt neue Callbacks für die intelligente „Zurück“-Geste, um den Beginn der „Zurück“-Geste, den Fortschritt während der Geste und das Abbrechen der „Zurück“-Geste zu verarbeiten. Bisher gab es nur denhandleOnBackPressed()-Callback für den Fall, dass die „Zurück“-Geste ausgeführt wird. Außerdem ist diePredictiveBackHandler-Composable enthalten, mit der Vorhersageereignisse für die Zurück-Geste in Activity Compose verarbeitet werden können. Sie stellt einen Flow von BackEventCompat-Objekten bereit, die im bereitgestellten suspendierenden Lambda erfasst werden müssen:
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() wurde zugunsten der APIs für die Verarbeitung von Back-Vorgängen eingestellt. Entwickler sollten jetzt OnBackPressedDispatcher verwenden, anstatt diese Methode zu überschreiben.
- EdgeToEdge:
ComponentActivity.enableEdgeToEdge()wurde hinzugefügt, um die Edge-to-Edge-Anzeige auf abwärtskompatible Weise einzurichten.
Version 1.8.0-rc01
20. September 2023
androidx.activity:activity:1.8.0-rc01, androidx.activity:activity-compose:1.8.0-rc01 und androidx.activity:activity-ktx:1.8.0-rc01 sind veröffentlicht. Version 1.8.0-rc01 enthält diese Commits.
Version 1.8.0-beta01
6. September 2023
androidx.activity:activity:1.8.0-beta01, androidx.activity:activity-compose:1.8.0-beta01 und androidx.activity:activity-ktx:1.8.0-beta01 sind veröffentlicht. Version 1.8.0-beta01 enthält diese Commits.
Verbesserung der Dokumentation
- Die Dokumentation von
BackEventCompatwurde verbessert. (aosp/2722254)
Version 1.8.0-alpha07
23. August 2023
androidx.activity:activity:1.8.0-alpha07, androidx.activity:activity-compose:1.8.0-alpha07 und androidx.activity:activity-ktx:1.8.0-alpha07 sind veröffentlicht. Version 1.8.0-alpha07 enthält diese Commits.
Neue Funktionen
Activity Compose hat ein neues
PredictiveBackHandler-Composable hinzugefügt, um Ereignisse für die vorhersagende Zurück-Geste zu verarbeiten. Sie enthält eineFlowvonBackEventCompat-Objekten, die in der von Ihnen bereitgestellten Lambda-Funktion zum Anhalten der Ausführung erfasst werden müssen: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 } }Außerdem wird eine Warnung zur Kompilierzeit über die Lint-Regel ausgegeben, um sicherzustellen, dass die
Flow-Aufrufecollect()sind. (Id2773, b/294884345)Die
onBackPressedDispatcherinComponentActivitywird jetzt verzögert initialisiert, sodass sie nur bei Bedarf erstellt wird. (I0bf8e)
Fehlerkorrekturen
ComponentActivityzeigt unter Android 13 keinen NPE mehr an, wenn einonBackPressed()-Callback empfangen wird und die Aktivität bereitsDESTROYEDwurde. (Idb055, b/291869278)- Verwendungen der experimentellen
isAtLeastU()API entfernt (Ie9117, b/289269026)
Version 1.8.0-alpha06
21. Juni 2023
androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06 und androidx.activity:activity-ktx:1.8.0-alpha06 sind veröffentlicht. Version 1.8.0-alpha06 enthält diese Commits.
Neue Funktionen
- Das
OnBackPressedDispatcherbricht jetzt alle Callbacks korrekt ab, die während einer Vorhersage-Geste für die Zurück-Schaltfläche entfernt werden. (I3f90f)
API-Änderungen
- Wenn Sie
SystemBarStyle.autoan dieenableEdgeToEdgeAPI übergeben, können Sie jetzt den Lambda-ParameterdetectDarkModeüberschreiben, um benutzerdefinierte Logik für die Erkennung des Nachtmodus bereitzustellen. (aosp/2546393, b/278263793)
Version 1.8.0-alpha05
7. Juni 2023
androidx.activity:activity:1.8.0-alpha05, androidx.activity:activity-compose:1.8.0-alpha05 und androidx.activity:activity-ktx:1.8.0-alpha05 sind veröffentlicht. Diese Version wird in einem internen Zweig entwickelt.
API-Änderungen
- Activity bietet jetzt eine
BackEventCompat-Klasse, die als abwärtskompatible Version vonBackEventdient und von der Framework-KlasseBackEvententkoppelt ist. - Wichtige Änderung:Die Methoden
handleOnBackStartedundhandleOnBackProgressedvonOnBackPressedCallbackerhalten jetzt eineandroidx.activity.BackEventCompat-Instanz anstelle einer Framework-Klasseandroid.window.BackEvent. Die entsprechenden@VisibleForTesting-APIs aufOnBackPressedDispatcherwurden ebenfalls aktualisiert. - Der Konstruktor für
OnBackPressedDispatcherakzeptiert jetzt eine optionaleConsumer<Boolean>-Instanz, mit der die Inhaber des Dispatchers einen Callback erhalten, wenn sich die Anzahl der aktivierten Callbacks von null auf einen Wert ungleich null oder umgekehrt ändert.
Fehlerkorrekturen
- Aktivität
1.7.2:ReportDrawnstürzt nicht mehr ab, wenn Nutzer einen Bildschirm verlassen, bevorreportaufgerufen wird. (Ic46f1, b/260506820)
Version 1.8.0-alpha04
10. Mai 2023
androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04 und androidx.activity:activity-ktx:1.8.0-alpha04 sind veröffentlicht. Diese Version wurde über einen internen Zweig veröffentlicht.
Fehlerkorrekturen
- Ab Activity 1.7.1: – Das
ReportFullyDrawExecuterwird nicht mehr geleakt, wennComponentActivitymitActivityScenarioverwendet wird. (Id2ff2, b/277434271)
Version 1.8.0-alpha03
12. April 2023
androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03 und androidx.activity:activity-ktx:1.8.0-alpha03 sind veröffentlicht. Diese Version wurde über einen internen Zweig veröffentlicht.
Neue Funktionen
ComponentActivity.setUpEdgeToEdge()wurde hinzugefügt, um das Edge-to-Edge-Display auf abwärtskompatible Weise einzurichten.
API-Änderungen
ComponentActivity.onBackPressed()wurde zugunsten der APIs für die Verarbeitung von Back-Vorgängen eingestellt. Entwickler sollten jetztOnBackPressedDispatcherverwenden, anstatt diese Methode zu überschreiben. (Ibce2f, b/271596918)ComponentDialogundComponentActivityenthalten jetzt die öffentliche APIinitViewTreeOwners(), mit der alle View-Baum-Inhaber initialisiert werden, bevor die Content-View festgelegt wird. (Ibdce0, b/261314581)
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem Fragmente MenuHosts fälschlicherweise ungültig gemacht und andere Menüs in der Aktivität unerwartetes Verhalten gezeigt haben. (I9404e, b/244336571)
Weitere Änderungen
- Die
ActivityResultRegisterverwendet jetzt KotlinRandomanstelle von Java. (I4d98f, b/272096025)
Version 1.8.0-alpha02
8. März 2023
androidx.activity:activity:1.8.0-alpha02, androidx.activity:activity-compose:1.8.0-alpha02 und androidx.activity:activity-ktx:1.8.0-alpha02 sind veröffentlicht. Aus einem internen Branch entwickelt.
Abhängigkeitsupdate
- Über Aktivität
1.7.0-rc01: Die Aktivität hängt jetzt vonLifecycle 2.6.0ab.
Version 1.8.0-alpha01
8. Februar 2023
androidx.activity:activity:1.8.0-alpha01, androidx.activity:activity-compose:1.8.0-alpha01 und androidx.activity:activity-ktx:1.8.0-alpha01 sind veröffentlicht. Dieser Build wurde aus einem internen Zweig erstellt.
Neue Funktionen
- Die Klasse
OnBackPressedCallbackenthält jetzt neue Predictive Back-Progress-Callbacks für die Verarbeitung des Beginns der „Zurück“-Geste, des Fortschritts während der Geste und des Abbruchs der „Zurück“-Geste. Zusätzlich zum bisherigenhandleOnBackPressed()-Callback für den Fall, dass die „Zurück“-Geste ausgeführt wird.
Version 1.7
Version 1.7.2
24. Mai 2023
androidx.activity:activity:1.7.2, androidx.activity:activity-compose:1.7.2 und androidx.activity:activity-ktx:1.7.2 sind veröffentlicht. Version 1.7.2 enthält diese Commits.
Fehlerkorrekturen
- Problem behoben, bei dem
ReportDrawnabstürzte, wenn der Nutzer einen Bildschirm verließ, bevorreportaufgerufen wurde. (Ic46f1, b/260506820)
Version 1.7.1
19. April 2023
androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1 und androidx.activity:activity-ktx:1.7.1 sind veröffentlicht. Version 1.7.1 enthält diese Commits.
Fehlerkorrekturen
- Das
ReportFullyDrawExecuterwird nicht mehr offengelegt, wennComponentActivitymitActivityScenarioverwendet wird. (Id2ff2, b/277434271)
Version 1.7.0
22. März 2023
androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0 und androidx.activity:activity-ktx:1.7.0 sind veröffentlicht. Version 1.7.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.6.0
- Die Aktivitätsverträge für die Bildauswahl in
PickVisualMediaundPickMultipleVisualMediawurden aktualisiert und enthalten einen zusätzlichen Fallback für den Fall, dassMediaStore.ACTION_PICK_IMAGESnicht verfügbar ist. Dadurch können OEMs und System-Apps wie die Google Play-Dienste eine einheitliche Bildauswahl auf einer größeren Anzahl von Android-Geräten und API-Levels bereitstellen, indem sie die Fallback-Aktion implementieren. Der Foto-Picker verwendet diesen Fallback, sofern er verfügbar ist, bevor er aufIntent.ACTION_OPEN_DOCUMENTzurückgreift, das weiterhin alle Geräte mit API-Level 19 und höher unterstützt. ComponentDialogimplementiert jetztSavedStateRegistryOwnerund hat Zugriff auf eigeneSavedStateRegistryund legt dieSavedStateRegistryOwnerfür seineViewTreefest. Es ist jetzt möglich, Jetpack Compose in einemComponentDialogzu verwenden, da es sowohl dieLifecycleOwner- als auch dieSavedStateRegistryOwner-Anforderungen erfüllt, die über dieViewTree-APIs an das Fenster angehängt sind.- Mit
IntentSenderRequest.Builder.setFlags()können Sie jetzt mehrere Flags ausIntentfestlegen, nicht nur ein einzelnes Flag.
Kotlin-Konvertierung
Eine Reihe von Activity-Klassen wurde in Kotlin konvertiert. Alle konvertierten Klassen behalten ihre binäre Kompatibilität mit früheren Versionen bei. Die folgenden Klassen haben quelleninkompatible Änderungen für in Kotlin geschriebene Klassen: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.
In der folgenden Tabelle finden Sie die Quell-Conversions für die neue Version von „Aktivität“:
| Aktivität 1.5 | Aktivität 1.6 |
|---|---|
override fun getActivityResultRegistry() = activityResultRegistry |
override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher |
override val onBackPressedDispatcher = onBackPressedDispatcher |
Diese Klassen wurden ebenfalls in Kotlin konvertiert, sind aber weiterhin quellkompatibel: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest und OnBackPressedDispatcher.
FullyDrawnReporter-APIs
ComponentActivity bietet jetzt eine FullyDrawnReporter-Instanz, mit der mehrere Komponenten melden können, wenn sie für die Interaktion bereit sind. ComponentActivity wartet, bis alle Komponenten abgeschlossen sind, bevor reportFullyDrawn() in Ihrem Namen aufgerufen wird. Diese APIs kümmern sich um die Timing-Anforderungen und müssen nicht als Teil eines onDraw-Aufrufs aufgerufen werden.
Es wird empfohlen, diese APIs zu aktivieren:
- Die Android Runtime wird benachrichtigt, wenn der Startvorgang abgeschlossen ist. So wird sichergestellt, dass der gesamte Code, der während einer Multi-Frame-Startsequenz ausgeführt wird, in die Hintergrundkompilierung einbezogen und für diese priorisiert wird.
- Sie können mit Signaling Macrobenchmark und Play Vitals angeben, wann Ihre Anwendung für Startmesswerte als vollständig gerendert gilt, damit Sie die Leistung im Blick behalten können.
Es wurden drei Activity Compose-APIs hinzugefügt, um die Verwendung von FullyDrawnReporter aus einzelnen Composables zu vereinfachen:
ReportDrawngibt an, dass das Composable sofort für die Interaktion bereit ist.ReportDrawnWhenakzeptiert ein Prädikat (d.h.list.count > 0), um anzugeben, wann Ihre Composable für die Interaktion bereit ist.ReportDrawnAfterverwendet eine Methode, die angehalten wird und nach deren Abschluss signalisiert, dass Sie bereit für die Interaktion sind.
Abhängigkeitsupdates
- Die Aktivität hängt jetzt vom Lebenszyklus
2.6.1ab. (8fc31d) - Die Aktivität hängt jetzt von ProfileInstaller
1.3.0ab. (83d3b1)
Version 1.7.0-rc01
8. März 2023
androidx.activity:activity:1.7.0-rc01, androidx.activity:activity-compose:1.7.0-rc01 und androidx.activity:activity-ktx:1.7.0-rc01 sind veröffentlicht. Version 1.7.0-rc01 enthält diese Commits.
Abhängigkeitsupdate
- Die Aktivität hängt jetzt von
Lifecycle 2.6.0ab.
Version 1.7.0-beta02
22. Februar 2023
androidx.activity:activity:1.7.0-beta02, androidx.activity:activity-compose:1.7.0-beta02 und androidx.activity:activity-ktx:1.7.0-beta02 sind veröffentlicht. Version 1.7.0-beta02 enthält diese Commits.
API-Änderungen
- Die Aktion und das Extra, die von den Verträgen
PickVisualMediaundPickMultipleVisualMediaals Fallback verwendet werden, wennMediaStore.ACTION_PICK_IMAGESnicht verfügbar ist, sind jetzt öffentliche Konstanten, die OEMs und System-Apps, die eine einheitliche Bildauswahl bieten möchten, API-Stabilität bieten. Die Implementierung dieses Fallbacks ist weiterhin auf System-Apps beschränkt. (Icd320)
Version 1.7.0-beta01
8. Februar 2023
androidx.activity:activity:1.7.0-beta01, androidx.activity:activity-compose:1.7.0-beta01 und androidx.activity:activity-ktx:1.7.0-beta01 sind veröffentlicht. Version 1.7.0-beta01 enthält diese Commits.
Neue Funktionen
- Mit
IntentSenderRequest.Builder.setFlags()können Sie jetzt mehrere Flags ausIntentfestlegen, nicht nur ein einzelnes Flag. (Iac04c)
Fehlerkorrekturen
- Der Fallback für
PickVisualMedia, wenn die Bildauswahl des Frameworks nicht verfügbar ist, beschränkt die Verarbeitung jetzt korrekt auf Apps, die im System-Image des Geräts installiert sind. (If8ae6)
Kotlin-Conversions
ActivityResultRegistryOwnerwurde jetzt in Kotlin geschrieben. Dies ist eine quelleninkompatible Änderung für diese in Kotlin geschriebenen Klassen. Sie müssen jetzt dieactivityResultRegistry-Property überschreiben, anstatt die vorherigegetActivityResultRegistry()-Funktion zu implementieren. (I0b00e)OnBackPressedDispatcherOwnerwurde jetzt in Kotlin geschrieben. Dies ist eine quellinkompatible Änderung für diese in Kotlin geschriebenen Klassen. Sie müssen jetzt dieonBackPressedDispatcher-Property überschreiben, anstatt die vorherigegetOnBackPressedDispatcher-Funktion zu implementieren. (Ia277d)ContextAware,ContextAwareHelper,OnContextAvailableListener,IntentSenderRequestundOnBackPressedDispatchersind jetzt in Kotlin geschrieben. (I1a73e, Iada92, aosp/2410754, I18ac7, b/257291701)
Version 1.7.0-alpha04
25. Januar 2023
androidx.activity:activity:1.7.0-alpha04, androidx.activity:activity-compose:1.7.0-alpha04 und androidx.activity:activity-ktx:1.7.0-alpha04 sind veröffentlicht. Version 1.7.0-alpha04 enthält diese Commits.
Neue Funktionen
- Die Activity Result Contracts
PickVisualMediaundPickMultipleVisualMediaverwenden jetzt eine von Google Play-Diensten bereitgestellte Bildauswahl, sofern verfügbar, wenn die vom Android-System bereitgestellte Bildauswahl (z.B.MediaStore.ACTION_PICK_IMAGES) nicht verfügbar ist. DieisPhotoPickerAvailable()API, die nur die vom Android-System bereitgestellte Bildauswahl erkennt, wurde eingestellt. Es wird empfohlen, die neueisPhotoPickerAvailable(Context)API zu verwenden, die zurückgibt, ob die Fotoauswahl verfügbar ist. (I55be6)
Version 1.7.0-alpha03
11. Januar 2023
androidx.activity:activity:1.7.0-alpha03, androidx.activity:activity-compose:1.7.0-alpha03 und androidx.activity:activity-ktx:1.7.0-alpha03 sind veröffentlicht. Version 1.7.0-alpha03 enthält diese Commits.
Neue Funktionen
ComponentDialogimplementiert jetztSavedStateRegistryOwnerund hat Zugriff auf das eigeneSavedStateRegistryund legt dasSavedStateRegistryOwnerfür den ViewTree fest. Es ist jetzt möglich, Jetpack Compose in einemComponentDialogzu verwenden, da es sowohl die Anforderungen vonLifecycleOwnerals auch vonSavedStateRegistryOwnererfüllt, die über die ViewTree-APIs an das Fenster angehängt sind. (Idca17, I73468 b/261162296)
API-Änderungen
- Es wurde eine
ReportDrawn-Composable-Funktion hinzugefügt, die die Aktivität sofort als bereit für den Aufruf vonreportFullyDrawnmarkiert. (Ic5b14, b/259687964)
Kotlin-Conversions
- Die Klassen
ActvitiyResultCallbackundOnBackPressedCallbackwurden beide in Kotlin konvertiert, wobei die Quell- und Binärkompatibilität beibehalten wurde. (Ifc5e5, Ide1b0, b/257291701)
Version 1.7.0-alpha02
24. Oktober 2022
androidx.activity:activity:1.7.0-alpha02, androidx.activity:activity-compose:1.7.0-alpha02 und androidx.activity:activity-ktx:1.7.0-alpha02 sind veröffentlicht. Version 1.7.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Aktivität
1.6.1: Es wurde ein Problem behoben, bei dem derPickMultipleVisualMedia-Activity Result Contract auf Android R-Geräten nicht gestartet wurde, wenn der Standardwert fürmaxItemsverwendet wurde. (Ie2776, b/249182130)
Version 1.7.0-alpha01
5. Oktober 2022
androidx.activity:activity:1.7.0-alpha01, androidx.activity:activity-compose:1.7.0-alpha01 und androidx.activity:activity-ktx:1.7.0-alpha01 sind veröffentlicht. Version 1.7.0-alpha01 enthält diese Commits.
FullyDrawnReporter-APIs
ComponentActivity bietet jetzt eine FullyDrawnReporter-Instanz, mit der mehrere Komponenten melden können, wenn sie für die Interaktion bereit sind. ComponentActivity wartet, bis alle Komponenten abgeschlossen sind, bevor reportFullyDrawn() in Ihrem Namen aufgerufen wird. Diese APIs kümmern sich um die Timing-Anforderungen und müssen nicht als Teil eines onDraw-Aufrufs aufgerufen werden.
Es wird empfohlen, diese APIs zu aktivieren:
- Die Android Runtime wird benachrichtigt, wenn der Startvorgang abgeschlossen ist. So wird sichergestellt, dass der gesamte Code, der während einer Multi-Frame-Startsequenz ausgeführt wird, in die Hintergrundkompilierung einbezogen und für diese priorisiert wird.
- Sie können mit Signaling Macrobenchmark und Play Vitals angeben, wann Ihre Anwendung für Startmesswerte als vollständig gerendert gilt, damit Sie die Leistung im Blick behalten können.
Es wurden zwei Activity Compose-APIs hinzugefügt, um die Verwendung von FullyDrawnReporter aus einzelnen Composables zu vereinfachen:
ReportDrawnWhenakzeptiert ein Prädikat (d.h.list.count > 0), um anzugeben, wann die Composable-Funktion für die Interaktion bereit ist.ReportDrawnAfterverwendet eine Methode, die angehalten wird. Wenn sie abgeschlossen ist, bedeutet das, dass Sie bereit für die Interaktion sind.
Version 1.6.1
Version 1.6.1
24. Oktober 2022
androidx.activity:activity:1.6.1, androidx.activity:activity-compose:1.6.1 und androidx.activity:activity-ktx:1.6.1 sind veröffentlicht. Version 1.6.1 enthält diese Commits.
Fehlerkorrekturen
- Es wurde ein Problem behoben, bei dem der
PickMultipleVisualMedia-Vertrag für das Aktivitätsergebnis auf Android R-Geräten nicht gestartet wurde, wenn der Standardwert fürmaxItemsverwendet wurde. (Ie2776, b/249182130)
Version 1.6.0
Version 1.6.0
21. September 2022
androidx.activity:activity:1.6.0, androidx.activity:activity-compose:1.6.0 und androidx.activity:activity-ktx:1.6.0 sind veröffentlicht. Version 1.6.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.5.0
ActivityResultContracts.PickVisualMediaundActivityResultContracts.PickMultipleVisualMediawurden hinzugefügt, um einen abwärtskompatiblen Vertrag bereitzustellen, derMediaStore.ACTION_PICK_IMAGESverwendet, wenn die Bildauswahl verfügbar ist, undIntent.ACTION_OPEN_DOCUMENT, wenn sie nicht verfügbar ist.- Die
OnBackInvokedCallbackin Android 13 wurde in die vonComponentActivityundComponentDialogbereitgestellteOnBackPressedDispatchersintegriert. So wird sichergestellt, dass alle APIs, die aufOnBackPressedDispatcherbasieren, funktionieren, wenn eine vorhersagende „Zurück“-Geste aktiviert wird.
Version 1.6.0-rc02
7. September 2022
androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02 und androidx.activity:activity-ktx:1.6.0-rc02 sind veröffentlicht. Version 1.6.0-rc02 enthält diese Commits.
Fehlerkorrekturen
OnBackPressedDispatcherregistriert jetztOnBackInvokedCallbackbeiPRIORITY_DEFAULTanstelle vonPRIORITY_OVERLAY. (I3901f)- Bei Klassen, die
ComponentActivityerweitern, werden jetzt immer beideonMultiWindowModeChanged()-Callbacks gesendet. (Ic4d85) - Der
ActivityResultRegistrygibt kein Ergebnis mehr an denActivityResultCallbackzurück, wenn beimlaunch-Aufruf einExceptionausgelöst wird und der Callback ohneLifecycleOwnerregistriert wurde. (Ia7ff7, b/238350794) ComponentActivityleitet Menüaufrufe jetzt richtig weiter, ohne dass die Super-Funktion in Ihrer Aktivität aufgerufen werden muss. (Ie33c5, b/238057118)
Abhängigkeitsupdate
- Die
Activity-Bibliothek hängt jetzt von Lifecycle2.5.1ab. (If6697)
Version 1.6.0-rc01
24. August 2022
androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01 und androidx.activity:activity-ktx:1.6.0-rc01 sind veröffentlicht. Version 1.6.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Wenn Sie SDK-Versionen vor Version 33 verwenden, führt die Initialisierung eines
OnBackPressedDispatchernicht mehr zuClassVerificationErrors. (Ic32e1) - Bei Klassen, die den
onPictureInPictureModeChanged()-Callback vonComponentActivityüberschreiben, werden die Callbacks jetzt immer gesendet. (Ib7fdb)
Version 1.6.0-beta01
10. August 2022
androidx.activity:activity:1.6.0-beta01, androidx.activity:activity-compose:1.6.0-beta01 und androidx.activity:activity-ktx:1.6.0-beta01 sind veröffentlicht. Version 1.6.0-beta01 enthält diese Commits.
API-Änderungen
- Die eingestellten Methoden
startActivityForResultundstartIntentSenderForResultaufComponentActivitywurden mit@NonNullgekennzeichnet, da das Übergeben vonnullimmer zu einem Absturz geführt hat. (Id2a25, b/231476082)
Fehlerkorrekturen
- Ab Aktivität
1.5.1:ActivityResultRegistrygibt kein Ergebnis mehr fürActivityResultCallbackzurück, wenn beimlaunch-Aufruf einExceptionausgegeben wird und der Callback ohneLifecycleOwnerregistriert wurde. (Ia7ff7, b/238350794) - Über Aktivität
1.5.1:ComponentActivitywerden Menüaufrufe jetzt ordnungsgemäß anonPrepareOptionMenu()-,onCreateOptionsMenu()- undonOptionsItemSelected()-Überschreibungen weitergeleitet, ohne dass die Superfunktion aufgerufen werden muss. (Ie33c5, b/238057118)
Abhängigkeitsupdate
- Ab Aktivität
1.5.1: DieActivity-Bibliothek hängt jetzt von derLifecycle-Version2.5.1ab. (If6697)
Version 1.6.0-alpha05
15. Juni 2022
androidx.activity:activity:1.6.0-alpha05, androidx.activity:activity-compose:1.6.0-alpha05 und androidx.activity:activity-ktx:1.6.0-alpha05 sind veröffentlicht. Version 1.6.0-alpha05 wurde in einem privaten Vorab-Release-Branch entwickelt und hat keine öffentlichen Commits.
API-Änderungen
minCompileSdkist jetzt 33, um dem Tiramisu Beta 3 SDK zu entsprechen.
Fehlerkorrekturen
- Der Absturz auf älteren Geräten bei der SDK-Erweiterungsprüfung für
PickVisualMediaActivityResultContractwurde behoben. Die Funktion sollte jetzt mitACTION_OPEN_DOCUMENTauf Geräten mit Android 10 und niedriger funktionieren.
Version 1.6.0-alpha04
18. Mai 2022
androidx.activity:activity:1.6.0-alpha04 und androidx.activity:activity-ktx:1.6.0-alpha04 sind veröffentlicht.
Fehlerkorrekturen
- Ein Fehler in
PickVisualMediaRequestwurde behoben, bei dem beim Versuch, eine Anfrage entweder über den Builder oder die Kotlin-Funktion auf oberster Ebene zu erstellen, ein Stack-Überlauf auftrat. - Die
OnBackInvokedCallbackin Android 13 Dev Beta 2 wurde in die vonComponentDialogbereitgestellteOnBackPressedDispatcherintegriert. So wird sichergestellt, dass alle APIs, die aufOnBackPressedDispatcherbasieren, funktionieren, wenn die Vorhersage-Geste „Zurück“ aktiviert wird.
Version 1.6.0-alpha03
27. April 2022
androidx.activity:activity:1.6.0-alpha03, androidx.activity:activity-compose:1.6.0-alpha03 und androidx.activity:activity-ktx:1.6.0-alpha03 sind veröffentlicht.
- Hinweis: Diese Version wird nur mit dem Android 13 Developer Beta 1 SDK kompiliert.
Neue Funktionen
ActivityResultContracts.PickVisualMediaundActivityResultContracts.PickMultipleVisualMediawurden hinzugefügt, um einen abwärtskompatiblen Vertrag bereitzustellen, derMediaStore.ACTION_PICK_IMAGESverwendet, wenn die Fotoauswahl verfügbar ist, undIntent.ACTION_OPEN_DOCUMENT, wenn sie nicht verfügbar ist.- Die
OnBackInvokedCallbackin Android 13 Dev Beta 1 wurde in die vonComponentActivitybereitgestellteOnBackPressedDispatcherintegriert. So wird sichergestellt, dass alle APIs, die aufOnBackPressedDispatcherbasieren, funktionieren, wenn die Vorhersage für die „Zurück“-Geste aktiviert wird.
Version 1.6.0-alpha01
23. März 2022
androidx.activity:activity:1.6.0-alpha01, androidx.activity:activity-compose:1.6.0-alpha01 und androidx.activity:activity-ktx:1.6.0-alpha01 sind veröffentlicht.
- Hinweis: Diese Version wird nur mit dem Android 13 Developer Preview 2 SDK kompiliert.
Neue Funktionen
- Änderungen aus der zweiten Entwicklervorschau von Android 13 wurden in
ComponentActivityintegriert.
Version 1.5.1
Version 1.5.1
27. Juli 2022
androidx.activity:activity:1.5.1, androidx.activity:activity-compose:1.5.1 und androidx.activity:activity-ktx:1.5.1 sind veröffentlicht. Version 1.5.1 enthält diese Commits.
Fehlerkorrekturen
Der
ActivityResultRegistrygibt kein Ergebnis mehr an denActivityResultCallbackzurück, wenn beimlaunch()-Aufruf einExceptionausgelöst wird und der Callback ohneLifecycleOwnerregistriert wurde. (Ia7ff7, b/238350794)ComponentActivityleitet Menüaufrufe jetzt ordnungsgemäß anonPrepareOptionMenu()-,onCreateOptionsMenu()- undonOptionsItemSelected()-Überschreibungen weiter, ohne dass die Superfunktion aufgerufen werden muss. (Ie33c5, b/238057118)
Abhängigkeitsupdate
- Die
Activity-Bibliothek hängt jetzt von Lifecycle2.5.1ab. (If6697)
Version 1.5.0
Version 1.5.0
29. Juni 2022
androidx.activity:activity:1.5.0, androidx.activity:activity-compose:1.5.0 und androidx.activity:activity-ktx:1.5.0 sind veröffentlicht. Version 1.5.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.4.0
- ComponentDialog –
ComponentDialogist eine Unterklasse vonDialog, die einOnBackPressedDispatcherenthält, das aufgerufen wird, wenn die System-Schaltfläche „Zurück“ gedrückt wird und das Dialogfeld sichtbar ist. Wichtig ist, dass in dieser Unterklasse auchViewTreeOnBackPressedDispatcherOwnerfestgelegt wird. So können Ansichten den richtigen Dispatcher abrufen, unabhängig davon, ob er in einemComponentActivityoder einemComponentDialogvorhanden ist. - Callback-Schnittstellen:
ComponentActivityimplementiert jetzt eine Reihe modularer Callback-Schnittstellen, die anstelle derActivity-Callbacks verwendet werden können. Dazu gehören die folgenden Schnittstellen:OnNewIntentProvider,OnConfigurationChangedProvider,OnTrimMemoryProvider,OnPictureInPictureModeChangedProvider,OnMultiWindowModeChangedProvider. - CreationExtras-Integration:
ComponentActivitykann jetzt über Lifecycle2.5.0-CreationExtrasein zustandslosesViewModelProvider.Factorybereitstellen.
Sonstige Änderungen
- Der parameterlose Konstruktor für
ActivityResultContracts.CreateDocumentwurde eingestellt und durch einen neuen Konstruktor ersetzt, der einen konkreten MIME-Typ (z.B. „image/png“) als Parameter akzeptiert, wie vonIntent.ACTION_CREATE_DOCUMENTgefordert.
Version 1.5.0-rc01
11. Mai 2022
androidx.activity:activity:1.5.0-rc01, androidx.activity:activity-compose:1.5.0-rc01 und androidx.activity:activity-ktx:1.5.0-rc01 werden ohne Änderungen gegenüber 1.5.0-beta01 veröffentlicht. Version 1.5.0-rc01 enthält diese Commits.
Version 1.5.0-beta01
20. April 2022
androidx.activity:activity:1.5.0-beta01, androidx.activity:activity-compose:1.5.0-beta01 und androidx.activity:activity-ktx:1.5.0-beta01 sind veröffentlicht. Version 1.5.0-beta01 enthält diese Commits.
Abhängigkeitsupdates
- Die Aktivität hängt jetzt von Lifecycle
2.4.0-beta01ab.
Version 1.5.0-alpha05
6. April 2022
androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05 und androidx.activity:activity-ktx:1.5.0-alpha05 sind veröffentlicht. Version 1.5.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Die
onPanelClosed()vonComponentActivityruft jetzt auch die Super-onPanelClosed()auf. Damit wird ein Problem behoben, bei dem dieonContextMenuClosed-Methode nicht aufgerufen wurde. (Ib6f77)
Version 1.5.0-alpha04
23. März 2022
androidx.activity:activity:1.5.0-alpha04, androidx.activity:activity-compose:1.5.0-alpha04 und androidx.activity:activity-ktx:1.5.0-alpha04 sind veröffentlicht. Version 1.5.0-alpha04 enthält diese Commits.
Fehlerkorrekturen
SavedStateViewFactoryunterstützt jetzt die Verwendung vonCreationExtras, auch wenn es mit einemSavedStateRegistryOwnerinitialisiert wurde. Wenn Extras angegeben werden, werden die initialisierten Argumente ignoriert. (I6c43b, b/224844583)
Version 1.5.0-alpha03
23. Februar 2022
androidx.activity:activity:1.5.0-alpha03, androidx.activity:activity-compose:1.5.0-alpha03 und androidx.activity:activity-ktx:1.5.0-alpha03 sind veröffentlicht. Version 1.5.0-alpha03 enthält diese Commits.
API-Änderungen
- Sie können jetzt
CreationExtrasan die Aktivitätsfunktionby viewModels()übergeben (I6a3e6, b/217600303).
Version 1.5.0-alpha02
9. Februar 2022
androidx.activity:activity:1.5.0-alpha02, androidx.activity:activity-compose:1.5.0-alpha02 und androidx.activity:activity-ktx:1.5.0-alpha02 sind veröffentlicht. Version 1.5.0-alpha02 enthält diese Commits.
Neue Funktionen
ComponentActivityimplementiert jetzt dieOnPictureInPictureModeChangedProvider-Schnittstelle, damit jede Komponente Ereignisse für Änderungen des Bild-im-Bild-Modus empfangen kann. (I9f567)ComponentActivityimplementiert jetzt dieOnMultiWindowModeChangedProvider-Schnittstelle, damit jede Komponente Ereignisse für Änderungen im Mehrfenstermodus empfangen kann. (I62d91)
Version 1.5.0-alpha01
26. Januar 2022
androidx.activity:activity:1.5.0-alpha01, androidx.activity:activity-compose:1.5.0-alpha01 und androidx.activity:activity-ktx:1.5.0-alpha01 sind veröffentlicht. Version 1.5.0-alpha01 enthält diese Commits.
Neue Funktionen
ComponentActivityist jetzt in ViewModel CreationExtras integriert, die als Teil von Lifecycle2.5.0-alpha01eingeführt wurden. (Ie7e00, b/207012584)ComponentDialogwurde hinzugefügt, eine Unterklasse vonDialog, die einOnBackPressedDispatcherenthält, das aufgerufen wird, wenn die System-Zurück-Schaltfläche gedrückt wird, während das Dialogfeld sichtbar ist. Wichtig ist, dass in dieser abgeleiteten Klasse auchViewTreeOnBackPressedDispatcherOwnerfestgelegt wird. So können Ansichten den richtigen Dispatcher auf generische Weise abrufen, unabhängig davon, ob er in einemComponentActivityoder einemComponentDialogvorhanden ist. (I8a1bc)ComponentActivityimplementiert jetzt die neueOnNewIntentProvider-Schnittstelle, damit jede Komponente diese Ereignisse empfangen kann. (If1f8b)ComponentActivityimplementiert jetzt die neueOnConfigurationChangedProvider-Schnittstelle, damit jede Komponente diese Ereignisse empfangen kann. (If623b)ComponentActivityimplementiert jetzt die neueOnTrimMemoryProvider-Schnittstelle, damit jede Komponente diese Ereignisse empfangen kann. (Ia9295)
API-Änderungen
- Der parameterlose Konstruktor für
ActivityResultContracts.CreateDocumentwurde eingestellt und durch einen neuen Konstruktor ersetzt, der einen konkreten MIME-Typ (z.B."image/png") akzeptiert, wie vonIntent.ACTION_CREATE_DOCUMENTgefordert. (I2bec6) - Die
OnBackPressedDispatcherOwner, die mit einer Ansicht verknüpft ist, kann jetzt überViewTreeOnBackPressedDispatcherOwnerabgerufen werden, anstatt dieContextzu casten. (I74685)
Fehlerkorrekturen
- Ein Absturz wurde behoben, der auftrat, wenn zum ersten Mal über einen
registerForActivityResult()-Callback oder die Callbacks für einenLifecycleObserver, der als Teil voniniteinesComponentActivityhinzugefügt wurde, auf einViewModelzugegriffen wurde. (Ife83f)
Version 1.4.0
Version 1.4.0
27. Oktober 2021
androidx.activity:activity:1.4.0, androidx.activity:activity-compose:1.4.0 und androidx.activity:activity-ktx:1.4.0 sind veröffentlicht. Version 1.4.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.3.0
- AndroidX
ComponentActivityimplementiert jetzt dieMenuHost-Schnittstelle. So kann jede Komponente Menüelemente zumActionBarhinzufügen, indem sie der Aktivität eineMenuProvider-Instanz hinzufügt. JederMenuProviderkann optional mit einemLifecyclehinzugefügt werden, das die Sichtbarkeit dieser Menüelemente automatisch basierend auf demLifecycle-Status steuert und das Entfernen desMenuProviderübernimmt, wenn dasLifecyclezerstört wird. - Die Klasse
ActivityResultContractwurde in Kotlin neu geschrieben, damit Entwickler, die benutzerdefinierte Verträge in Kotlin schreiben, die richtige Null-Zulässigkeit für ihre Ein- und Ausgabeklassen definieren können. - Die Klasse
ActivityResultContractsund ihre Verträge wurden in Kotlin neu geschrieben, um die richtige Null-Zulässigkeit zu gewährleisten.
Version 1.4.0-rc01
13. Oktober 2021
androidx.activity:activity:1.4.0-rc01, androidx.activity:activity-compose:1.4.0-rc01 und androidx.activity:activity-ktx:1.4.0-rc01 sind veröffentlicht. Version 1.4.0-rc01 enthält diese Commits.
Fehlerkorrekturen
ActivityResultRegistrygibt kein Ergebnis mehr fürActivityResultCallbackzurück, wenn beimlaunch-AufrufExceptionausgelöst wird. (If4f91, b/200845664)
Version 1.4.0-beta01
29. September 2021
androidx.activity:activity:1.4.0-beta01, androidx.activity:activity-compose:1.4.0-beta01 und androidx.activity:activity-ktx:1.4.0-beta01 sind veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.
API-Änderungen
- Der Typ für
ActivityResultContracts.OpenMultipleDocumentsundActivityResultContracts.GetMultipleContentswurde korrigiert. Dadurch wurde bei Verwendung des Codes aus der Programmiersprache Java der AusgabetypList<? extends Uri>verwendet. (If71de) - Auf öffentliche Konstanten in den Klassen
ActivityResultContracts.StartActivityForResult,ActivityResultContracts.StartIntentSenderForResultundActivityResultContracts.RequestMultiplePermissionskann jetzt über die öffentlichenCompanion-Objekte zugegriffen werden, wenn Kotlin verwendet wird. (aosp/1832555)
Updates für die Dokumentation
- Die Einstellungsmitteilung für APIs, die jetzt von den Activity Result APIs (
startActivityForResult,startIntentSenderForResult,onActivityResult,requestPermissionsundonRequestPermissionsResult) verarbeitet werden, wurde um weitere Details ergänzt. (cce80f)
Version 1.4.0-alpha02
15. September 2021
androidx.activity:activity:1.4.0-alpha02, androidx.activity:activity-compose:1.4.0-alpha02 und androidx.activity:activity-ktx:1.4.0-alpha02 sind veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.
Neue Funktionen
- Das
activity-compose-Artefakt enthält jetzt einenLaunchDuringComposition-Lint-Fehler, der verhindert, dass Sie dielaunch-Methode vonActivityResultLauncherim Rahmen der Komposition aufrufen, da die Komposition nebenwirkungsfrei sein sollte. Verwenden Sie die APIs zum Verarbeiten von Nebeneffekten. (7c2bbe, b/191347220)
API-Änderungen
- Die Klasse
ActivityResultContractwurde in Kotlin neu geschrieben, damit Entwickler, die benutzerdefinierte Verträge in Kotlin schreiben, die richtige Null-Zulässigkeit für ihre Ein- und Ausgabeklassen definieren können. (I8a8f5) - Die Klasse
ActivityResultContractsund ihre Verträge wurden in Kotlin neu geschrieben, um die richtige Null-Zulässigkeit zu gewährleisten. (I69802)
Version 1.4.0-alpha01
1. September 2021
androidx.activity:activity:1.4.0-alpha01, androidx.activity:activity-compose:1.4.0-alpha01 und androidx.activity:activity-ktx:1.4.0-alpha01 sind veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
Neue Funktionen
- AndroidX
ComponentActivityimplementiert jetzt dieMenuHost-Schnittstelle. So kann jede Komponente Menüelemente zumActionBarhinzufügen, indem sie der Aktivität eineMenuProvider-Instanz hinzufügt. JederMenuProviderkann optional mit einemLifecyclehinzugefügt werden, das die Sichtbarkeit dieser Menüelemente automatisch basierend auf demLifecycle-Status steuert und das Entfernen desMenuProviderübernimmt, wenn dasLifecyclezerstört wird. (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)
}
Geändertes Verhalten
- Die
ActivityResultRegistrylöst jetzt eineIllegalStateExceptionaus, wenn versucht wird,launch()für eineActivityResultLauncheraufzurufen, die nicht registriert oder deren Registrierung aufgehoben wurde. (Ida75d, b/192567522)
Externer Beitrag
- Vielen Dank an dmitrilc für die Korrektur eines Tippfehlers in der
ActivityResult-Dokumentation. (#221)
Version 1.3.1
Version 1.3.1
4. August 2021
androidx.activity:activity:1.3.1, androidx.activity:activity-compose:1.3.1 und androidx.activity:activity-ktx:1.3.1 sind veröffentlicht. Version 1.3.1 enthält diese Commits.
Abhängigkeitsupdates
- Die Aktivität hängt jetzt von Kotlin
1.5.21ab. - Activity Compose hängt jetzt von Compose
1.0.1ab.
Version 1.3.0
Version 1.3.0
28. Juli 2021
androidx.activity:activity:1.3.0, androidx.activity:activity-compose:1.3.0 und androidx.activity:activity-ktx:1.3.0 sind veröffentlicht. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Activity Compose-Artefakt: Das
activity-compose-Artefakt bietet die ErweiterungsmethodesetContentzum Hosten Ihrer Jetpack Compose-UI in einer Activity sowie Compose-spezifische Wrapper für die Interaktion mit denComponentActivity-APIs zur Verarbeitung des Buttons „Zurück“ des Systems und der Activity Result APIs. Weitere Informationen - CaptureVideo-Vertrag: Der
CaptureVideoActivityResultContractersetzt den jetzt eingestelltenTakeVideo-Vertrag und gibt einen booleschen Wert zurück, der den Erfolg angibt und in vielen Kamera-Apps funktioniert. - Tracking von Hinweisen zum Bild-im-Bild-Modus: Nutzer von
activity-ktxkönnen jetzt die ErweiterungsmethodetrackPipAnimationHintViewfürActivityverwenden, umPictureInPictureParamsautomatisch mit der neuen Position der Ansicht neu zu erstellen, wenn sich die Position relativ zum Fenster ändert.
Version 1.3.0-rc02
14. Juli 2021
androidx.activity:activity:1.3.0-rc02, androidx.activity:activity-compose:1.3.0-rc02 und androidx.activity:activity-ktx:1.3.0-rc02 sind veröffentlicht. Version 1.3.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Die
ActivityResultRegistry-Callbacks werden jetzt richtig gespeichert und wiederhergestellt, sodass sie im „savedState“ nicht dupliziert werden. (I97816, b/191893160)
Version 1.3.0-rc01
1. Juli 2021
androidx.activity:activity:1.3.0-rc01, androidx.activity:activity-compose:1.3.0-rc01 und androidx.activity:activity-ktx:1.3.0-rc01 werden ohne Änderungen seit 1.3.0-beta02 veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
Version 1.3.0-beta02
16. Juni 2021
androidx.activity:activity:1.3.0-beta02, androidx.activity:activity-compose:1.3.0-beta02 und androidx.activity:activity-ktx:1.3.0-beta02 sind veröffentlicht. Version 1.3.0-beta02 enthält diese Commits.
activity-compose wurde aktualisiert, um von Compose 1.0.0-beta09 abhängig zu sein. androidx.compose.ui:ui-test-junit4 hat jetzt eine Kompilierungszeitabhängigkeit von activity-compose.
Version 1.3.0-beta01
2. Juni 2021
androidx.activity:activity:1.3.0-beta01, androidx.activity:activity-compose:1.3.0-beta01 und androidx.activity:activity-ktx:1.3.0-beta01 sind veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
API-Änderungen
- Die zuvor verworfene Methode
@Composable registerForActivityResult()wurde entfernt. Verwenden SierememberLauncherForActivityResult(). (Ic39d3)
Version 1.3.0-alpha08
18. Mai 2021
androidx.activity:activity:1.3.0-alpha08, androidx.activity:activity-compose:1.3.0-alpha08 und androidx.activity:activity-ktx:1.3.0-alpha08 sind veröffentlicht. Version 1.3.0-alpha08 enthält diese Commits.
Neue Funktionen
- Die neue
CaptureVideoActivityResultContractgibt einen booleschen Wert fürActivityResultCallbackzurück, der angibt, ob dein Video erfolgreich unter dem angegebenen URI gespeichert wurde. Dies ersetzt den jetzt eingestelltenTakeVideo-Vertrag, da Kamera-Apps nur sehr selten eine Miniatur-Bitmap zurückgegeben haben, was das Ergebnis unbrauchbar machte. (Ie21f2, b/185938070) - Neue API
Activity#setPipAnimationHintViewhinzugefügt, um den Quellrechteck-Hinweis von PipParams zu aktualisieren, wenn sich die Ansicht bewegt. (I9063d)
API-Änderungen
- Die Funktion
rememberLauncherForActivityResultgibt jetzt einen Launcher zurück, der die Funktionunregister()ersetzt. Die Registrierung und Deregistrierung des Launchers wird automatisch vonrememberLauncherForActivityResultübernommen. (I2443e)
Compose-Kompatibilität
androidx.activity:activity-compose:1.3.0-alpha08ist nur mit Compose-Version1.0.0-beta07und höher kompatibel.
Version 1.3.0-alpha07
21. April 2021
androidx.activity:activity:1.3.0-alpha07, androidx.activity:activity-compose:1.3.0-alpha07 und androidx.activity:activity-ktx:1.3.0-alpha07 sind veröffentlicht. Version 1.3.0-alpha07 enthält diese Commits.
Fehlerkorrekturen
rememberLauncherForActivityResultgibt jetzt eine stabile Referenz auf dieselbeActivityResultLauncher-Instanz zurück, auch wenn sich der Vertrag aufgrund von Neuzusammenstellungen ändert. (Id2d6d)- Bei Verwendung instabiler Versionen von Fragmenten über
1.3.0wird kein fälschlicher Lint-Fehler mehr ausgegeben, der Sie auffordert,1.3.0zu verwenden. (aosp/1670206, b/184847092)
Version 1.3.0-alpha06
7. April 2021
androidx.activity:activity:1.3.0-alpha06, androidx.activity:activity-compose:1.3.0-alpha06 und androidx.activity:activity-ktx:1.3.0-alpha06 sind veröffentlicht. Version 1.3.0-alpha06 enthält diese Commits.
API-Änderungen
- Die
registerForActivityResult()API wurde inrememberLauncherForActivityResult()umbenannt, um besser zu verdeutlichen, dass das zurückgegebeneActivityResultLauncherein verwaltetes Objekt ist, das in Ihrem Namen gespeichert wird. Beim Versuch,unregistermit dem zurückgegebenenActivityResultLauncheraufzurufen, wird jetzt ein Fehler ausgegeben. (I2bb6d) LocalOnBackPressedDispatcherOwner.currentundLocalActivityResultRegistryOwner.currentgeben jetzt einen Nullable-Wert zurück, um besser feststellen zu können, ob er in der aktuellen Komposition verfügbar ist. APIs, für die diese APIs erforderlich sind, z. B.BackHandlerundrememberLauncherForActivityResult(), geben jetzt einen aussagekräftigeren Fehler zurück, wenn der zugrunde liegende Inhaber nicht gefunden wird.NavHostfunktioniert jetzt auch dann, wenn keineOnBackPressedDispatcherOwnergefunden wird. Das ist beispielsweise der Fall, wenn Sie eine Vorschau vonNavHostaufrufen. (I7d8b4)
Fehlerkorrekturen
- Die
BackHandlerfängt jetzt Rücktaste-Eingaben richtig ab, wenn die AktivitätSTOPPEDund dann wiederSTARTEDist. Außerdem wurden andere Callbacks mit einem LifecycleOwner hinzugefügt. (I71de6, b/182284739) - Die Verwendung der
launch()-Methodenerweiterung mit einem benutzerdefiniertenActivityResultContract, das eineUnit-Eingabe hat, führt nicht mehr zu einemNullPointerException(I76282, b/183837954).
Version 1.3.0-alpha05
24. März 2021
androidx.activity:activity:1.3.0-alpha05, androidx.activity:activity-compose:1.3.0-alpha05 und androidx.activity:activity-ktx:1.3.0-alpha05 sind veröffentlicht. Version 1.3.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Aus Aktivität 1.2.2: Ein Problem im
InvalidFragmentVersionForActivityResult-Lint-Check wurde behoben, das bei Verwendung von Fragment 1.3.1 oder höher zu einem falsch positiven Ergebnis führte. (I54da1, b/182388985) - Ab Activity 1.2.2:
ComponentActivityvermeidet jetzt einenClassNotFoundExceptionbeim Starten einesIntentüber einenActivityResultContract, der zuvor als Extra in einem anderenIntentgehalten wurde. (Ieff05, b/182906230)
Abhängigkeitsupdates
- Aus Aktivität 1.2.2: Die Aktivität hängt jetzt von Lifecycle
2.3.1ab.
Version 1.3.0-alpha04
10. März 2021
androidx.activity:activity:1.3.0-alpha04, androidx.activity:activity-compose:1.3.0-alpha04 und androidx.activity:activity-ktx:1.3.0-alpha04 sind veröffentlicht. Version 1.3.0-alpha04 enthält diese Commits.
Fehlerkorrekturen
- Über Aktivität
1.2.1:RequestMultiplePermissionswerden jetzt immer Ergebnisse für alle angeforderten Berechtigungen zurückgegeben, nicht nur für Berechtigungen, die zuvor nicht erteilt wurden. (I50bc3, b/180884668) - Über Aktivität
1.2.1:ActivityResultRegistrysorgt jetzt dafür, dass laufendelaunch()-Anfragen ihre Ergebnisse zurückgeben, auch wenn Sieunregister()und dannregister()mit demselben Schlüssel. (I9ef34, b/181267562) - Bei Activity Compose werden keine Testabhängigkeiten mehr zum Laufzeit-Classpath hinzugefügt. (Ifd8b3)
- Ein Problem mit
BackHandlerwurde behoben, bei dem die zuvor festgelegteonBack-Lambda nach der Neuzusammensetzung weiterhin verwendet wurde. (8eb5eb)
Version 1.3.0-alpha03
24. Februar 2021
androidx.activity:activity:1.3.0-alpha03, androidx.activity:activity-compose:1.3.0-alpha03 und androidx.activity:activity-ktx:1.3.0-alpha03 sind veröffentlicht. Version 1.3.0-alpha03 enthält diese Commits.
Neue Funktionen
- Es gibt jetzt eine zusammensetzbare
registerForActivityResult-Funktion, mit der Ergebnisse von Aktivitäten in zusammensetzbaren Funktionen abgerufen werden können. (Ia7851, b/172690553)
API-Änderungen
LocalOnBackPressedDispatcherOwnerhat jetztprovides-Funktionen, die mitCompositionLocalProviderverwendet werden können und dieasProvidableCompositionLocal()-API ersetzen. (I45d24)
Version 1.3.0-alpha02
10. Februar 2021
androidx.activity:activity:1.3.0-alpha02, androidx.activity:activity-compose:1.3.0-alpha02 und androidx.activity:activity-ktx:1.3.0-alpha02 sind veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem in Activity Compose
1.3.0-alpha01wurde behoben, das beim Verwenden von Compose1.0.0-alpha12eineNoSuchMethodError: No static method setContent-Ausnahme verursacht hat. Alle Compose-Nutzer sollten1.3.0-alpha02oder höher verwenden. (b/179911234)
API-Änderungen
- Mit der
BackHandler-API kann eine komponierbare Funktion den System-Button „Zurück“ abfangen. (I58ed5, b/172154006)
Version 1.3.0-alpha01
10. Februar 2021
androidx.activity:activity:1.3.0-alpha01, androidx.activity:activity-compose:1.3.0-alpha01 und androidx.activity:activity-ktx:1.3.0-alpha01 sind veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
Neue Funktionen
- Das neue
activity-compose-Artefakt bietet Jetpack Compose-spezifische Hilfsfunktionen fürandroidx.activity-spezifische APIs.ComponentActivity.setContentwurde vonandroidx.compose.ui.platform.setContentnachandroidx.activity.compose.setContentverschoben. (Icf416)
Bekannte Probleme
- Wenn Sie Activity Compose
1.3.0-alpha01und Bibliotheken verwenden, die davon abhängen, z. B.androidx.compose.ui:ui-test-junit4:1.0.0-alpha12, wird eineNoSuchMethodError: No static method setContent-Ausnahme ausgelöst. (b/179911234)
Version 1.2.4
Version 1.2.4
21. Juli 2021
androidx.activity:activity:1.2.4 und androidx.activity:activity-ktx:1.2.4 sind veröffentlicht. Version 1.2.4 enthält diese Commits.
Fehlerkorrekturen
- Aus Aktivität
1.3.0-rc02: Die ActivityResultRegistry-Callbacks werden jetzt richtig gespeichert und wiederhergestellt, sodass Callbacks im savedState nicht dupliziert werden. (I97816, b/191893160)
Version 1.2.3
Version 1.2.3
5. Mai 2021
androidx.activity:activity:1.2.3 und androidx.activity:activity-ktx:1.2.3 sind veröffentlicht. Version 1.2.3 enthält diese Commits.
Fehlerkorrekturen
- Die Verwendung der
launch()-Methodenerweiterung mit einem benutzerdefiniertenActivityResultContract, das eineUnit-Eingabe hat, führt nicht mehr zu einemNullPointerException(I76282, b/183837954). - Ein fälschlicherweise positiver Lint-Fehler wurde behoben, der Sie aufforderte, Fragment
1.3.0zu verwenden, wenn Sie einen Snapshot-, Alpha-, Beta- oder RC-Build einer neueren Version von Fragments verwenden. (f4a57e, b/184847092)
Version 1.2.2
Version 1.2.2
24. März 2021
androidx.activity:activity:1.2.2 und androidx.activity:activity-ktx:1.2.2 sind veröffentlicht. Version 1.2.2 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem im
InvalidFragmentVersionForActivityResult-Lint-Check wurde behoben, das zu einem falsch positiven Ergebnis bei der Verwendung von Fragment 1.3.1 oder höher geführt hat. (I54da1, b/182388985) - Mit
ComponentActivitywird jetzt einClassNotFoundExceptionvermieden, wenn einIntentüber einActivityResultContractgestartet wird, das zuvor als Extra in einem anderenIntententhalten war. (Ieff05, b/182906230)
Abhängigkeitsupdates
- Die Aktivität hängt jetzt von Lifecycle
2.3.1ab.
Version 1.2.1
Version 1.2.1
10. März 2021
androidx.activity:activity:1.2.1 und androidx.activity:activity-ktx:1.2.1 sind veröffentlicht. Version 1.2.1 enthält diese Commits.
Fehlerkorrekturen
RequestMultiplePermissionsgibt jetzt immer Ergebnisse für alle angeforderten Berechtigungen zurück und nicht nur für Berechtigungen, die zuvor nicht gewährt wurden. (I50bc3, b/180884668)ActivityResultRegistrysorgt jetzt dafür, dass laufendelaunch()-Anfragen ihre Ergebnisse zurückgeben, auch wenn Sieunregister()und dannregister()noch einmal mit demselben Schlüssel ausführen. (I9ef34, b/181267562)
Version 1.2.0
Version 1.2.0
10. Februar 2021
androidx.activity:activity:1.2.0 und androidx.activity:activity-ktx:1.2.0 sind veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
- Activity Result APIs:
ComponentActivitybietet jetzt eineActivityResultRegistry, mit der SiestartActivityForResult()+onActivityResult()- undrequestPermissions()+onRequestPermissionsResult()-Abläufe verarbeiten können, ohne Methoden in Ihrer Activity oder Ihrem Fragment zu überschreiben. Außerdem wird die Typsicherheit durchActivityResultContracterhöht und es werden Hooks zum Testen dieser Abläufe bereitgestellt. Weitere Informationen finden Sie unter Ergebnis einer Aktivität abrufen.
ContextAware: InComponentActivitywird jetztContextAwareimplementiert. So können Sie eine oder mehrereOnContextAvailableListener-Instanzen hinzufügen, die einen Callback vor der Basis-Activity.onCreate()erhalten.- Mit einer suspendierenden Kotlin-Erweiterung
withContextAvailable()können Sie einen nicht suspendierenden Block ausführen, wenn der Kontext verfügbar wird, und ein Ergebnis zurückgeben. - Diese API wird von
FragmentActivityin Fragment 1.3.0 verwendet, um den Status vonFragmentManagerwiederherzustellen. Alle Listener, die Unterklassen vonFragmentActivityhinzugefügt werden, werden nach diesem Listener ausgeführt. - Diese API wird von
AppCompatActivityin AppCompat 1.3.0-alpha02 oder höher verwendet. Alle Listener, die Unterklassen vonAppCompatActivityhinzugefügt werden, werden nach diesem Listener ausgeführt.
- Mit einer suspendierenden Kotlin-Erweiterung
ViewTree-Support:ComponentActivityunterstützt jetzt die APIsViewTreeLifecycleOwner.get(View),ViewTreeViewModelStoreOwner.get(View)undViewTreeSavedStateRegistryOwner, die in Lifecycle2.3.0und SavedState1.1.0hinzugefügt wurden. Daher wird die Aktivität alsLifecycleOwner,ViewModelStoreOwnerundSavedStateRegistryOwnerfür alle Ansichten zurückgegeben, die direkt zuComponentActivityhinzugefügt wurden.
- reportFullyDrawn()-Backport: Die Methode
ActivityvonreportFullyDrawn()wurde inComponentActivitybackportiert, damit sie auf allen API-Levels funktioniert. Dadurch wird ein Absturz auf API 19 behoben und Tracing für diese Methode für alle API-Levels hinzugefügt.
Version 1.2.0-rc01
16. Dezember 2020
androidx.activity:activity:1.2.0-rc01 und androidx.activity:activity-ktx:1.2.0-rc01 sind veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Mit
ActivityResultRegistrywird jetzt immer der genaue gespeicherte Zustand wiederhergestellt. (Idd56b) - Tracing zu
ComponentActivity.reportFullyDrawnhinzufügen (Ic7632)
Externer Beitrag
ComponentActivityüberschreibt jetztreportFullyDrawn(). Dadurch kann die Methode auf allen API-Ebenen aufgerufen werden. Außerdem wird ein Absturz behoben, der auftritt, wenn diese Methode ohne die entsprechende Systemberechtigung auf Geräten mit API 19 aufgerufen wird. Vielen Dank, Simon Schiller! (b/163239764, #103)
Version 1.2.0-beta02
2. Dezember 2020
androidx.activity:activity:1.2.0-beta02 und androidx.activity:activity-ktx:1.2.0-beta02 sind veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem die Activity Result API nicht auf den Lebenszyklus
STARTEDgewartet hat, bevor Ergebnisse bereitgestellt wurden, wenn sie mit einemLifecycleregistriert war. (I109ea)
Externer Beitrag
- Die Dokumentation für
launch()wurde aktualisiert, um explizit darauf hinzuweisen, dass eineActivityNotFoundExceptionausgelöst werden kann. Vielen Dank, Michał Zieliński! (aosp/1493580)
Version 1.2.0-beta01
1. Oktober 2020
androidx.activity:activity:1.2.0-beta01 und androidx.activity:activity-ktx:1.2.0-beta01 sind veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
Fehlerkorrekturen
Die
ActivityResultRegistrygeneriert jetzt zufällig Ganzzahlen, bis sie eine findet, die nicht zugewiesen ist, um sie als Anfragecoderegister()zu verwenden. So wird ein möglicher Ganzzahlüberlauf durch das Inkrementieren von Anfragecodes verhindert. (b/168779518)Lifecycle-Beobachter werden beim Aufrufen vonunregister()für einActivityResultLauncherordnungsgemäß entfernt. (b/165608393)
Geändertes Verhalten
- Die
ActivityResultRegistrylöst jetzt eineIllegalStateExceptionaus, wenn versucht wird,register()mit einemLifecycleOwneraufzurufen, dessenLifecyclebereitsSTARTEDerreicht hat. (b/165435866)
Dokumentation aktualisiert
ContextAware-Dokumentationslinks zuLifecycleOwner, umLifecycle-Rückrufe als geeigneten Ort für Erstellungs- und Löschereignisse hervorzuheben. (aosp/1414152)
Version 1.2.0-alpha08
19. August 2020
androidx.activity:activity:1.2.0-alpha08 und androidx.activity:activity-ktx:1.2.0-alpha08 sind veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.
Neue Funktionen
- In
ComponentActivitywird jetztContextAwareimplementiert. Sie können also eine oder mehrereOnContextAvailableListener-Instanzen hinzufügen, die einen Callback vor der Basis-Activity.onCreate()erhalten. (b/161390636)- Mit einer suspendierenden Kotlin-Erweiterung
withContextAvailable()können Sie einen nicht suspendierenden Block ausführen, wenn der Kontext verfügbar wird, und ein Ergebnis zurückgeben. (I8290c) - Diese API wird von
FragmentActivityin Fragment 1.3.0-alpha08 verwendet, um den Status vonFragmentManagerwiederherzustellen. Alle Listener, die Unterklassen vonFragmentActivityhinzugefügt werden, werden nach diesem Listener ausgeführt. (I513da) - Diese API wird von
AppCompatActivityin AppCompat 1.3.0-alpha02 verwendet. Alle Listener, die Unterklassen vonAppCompatActivityhinzugefügt werden, werden nach diesem Listener ausgeführt. (I513da)
- Mit einer suspendierenden Kotlin-Erweiterung
Fehlerkorrekturen
- Ein Problem mit dem
ActivityResultFragmentVersionDetector-Lint-Check wurde behoben, das dazu führte, dass er bei Verwendung von Lint 27.1.0 oder höher nicht mehr funktionierte. (b/162155191)
Version 1.2.0-alpha07
22. Juli 2020
androidx.activity:activity:1.2.0-alpha07 und androidx.activity:activity-ktx:1.2.0-alpha07 sind veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.
Neue Funktionen
- Es wurde ein neuer
InvalidFragmentVersionForActivityResult-Lint-Check hinzugefügt, der prüft, ob Sie Fragment1.3.0-alpha07verwenden, wenn Sie die Activity Result API nutzen. So werden Laufzeitabstürze aufgrund von Problemen mit ungültigen Anfragecodes und nicht funktionierende Berechtigungsanfragen vermieden, die durch die Verwendung älterer Versionen von Fragmenten verursacht werden. (b/152554847)
Externer Beitrag
- Es wurde ein
ArrayIndexOutOfBoundsExceptionbeim Parsen der Ergebnisse für denRequestPermission-Vertrag „Activity Result“ behoben. (I8f9e3, b/161057605)
Version 1.2.0-alpha06
10. Juni 2020
androidx.activity:activity:1.2.0-alpha06 und androidx.activity:activity-ktx:1.2.0-alpha06 sind veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.
Neue Funktionen
- Sie können die Klasse
ActivityResultjetzt in Kotlin dekonstruieren, um direkt aufrequestCodeundintentzuzugreifen. (b/157212935) - Mit
ActivityResultLauncherkönnen Sie jetzt dieActivityResultContractabrufen, die zum Registrieren des Launchers verwendet wurde. (b/156875743)
API-Änderungen
- Funktionsgefährdende Änderung: Die Methode
invoke()fürActivityResultRegistrywurde inonLaunch()umbenannt. (b/157496491) - Der
OpenMultipleDocuments-Vertrag gibt jetzt eine leere Liste anstelle vonnullan den registrierten Callback zurück, wenn kein Ergebnis zurückgegeben wird. (b/157348014)
Version 1.2.0-alpha05
20. Mai 2020
androidx.activity:activity:1.2.0-alpha05 und androidx.activity:activity-ktx:1.2.0-alpha05 sind veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.
Neue Funktionen
- Unterstützung für
ViewTreeViewModelStoreOwneraus Lifecycle2.3.0-alpha03undViewTreeSavedStateRegistryOwneraus SavedState1.1.0-alpha01bei Verwendung einesViewin einemComponentActivityhinzugefügt. (aosp/1297993, aosp/1300264)
API-Änderungen
- Der
TakePicture-Vertrag gibt jetzt einbooleanzurück, das den Erfolg anzeigt, anstatt eines ThumbnailsBitmap, da dies von Kamera-Apps beim Schreiben des Bildes in den bereitgestelltenUrinur sehr selten unterstützt wurde. (b/154302879) - Die
invoke()-Erweiterungen fürActivityResultLauncherwurden entfernt. Stattdessen wird jetzt explizitlaunch()verwendet, um besser zu verdeutlichen, dass es sich um asynchrone Vorgänge handelt. Dem Paketandroidx.activity.resultfürActivityResultLauncher<Void>undActivityResultLauncher<Unit>wurden Kotlin-Erweiterungen fürlaunchhinzugefügt, sodassnullbzw.Unitnicht mehr übergeben werden müssen. Das Verhalten entspricht dem der vorherigeninvoke()-Erweiterungen. (aosp/1304674, aosp/1304675) - Die
IntentSenderRequest.Builder-Methoden fürsetFlagsMask()undsetFlagsValues()wurden in einer einzigensetFlags()-Methode zusammengefasst. (aosp/1302111)
Fehlerkorrekturen
- Beim Registrieren eines
ActivityResultCallbackmit einemLifecycleOwnerwurde ein Problem behoben, bei dem der Rückruf ausgelöst wurde, bevor der StatusSTARTEDerreicht wurde. (aosp/1309744)
Geändertes Verhalten
- Die
ActivityResultRegistrygeneriert jetzt Anforderungscodes ab0xFFFFanstatt ab0. So wird eine Überschneidung bei der Verwendung vonstartActivityForResult()oderrequestPermissions()in einer Aktivität verhindert. (aosp/1302324)
Version 1.2.0-alpha04
29. April 2020
androidx.activity:activity:1.2.0-alpha04 und androidx.activity:activity-ktx:1.2.0-alpha04 sind veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.
Neue Funktionen
- Ein Vertrag wurde hinzugefügt, der „startIntentSenderForResult“ für die ActivityResult-APIs aufrufen kann. (b/153007517)
API-Änderungen
- Die Methode
prepareCall()wurde sowohl hier inComponentActivityals auch im Fragment1.3.0-alpha04inregisterForActivityResult()umbenannt. (aosp/1278717) - Die Verträge
GetContents,OpenDocumentsundRequestPermissionswurden inGetMultipleContents,OpenMultipleDocumentsundRequestMultiplePermissionsumbenannt. (aosp/1280161) ComponentActivityimplementiert jetzt dieActivityResultRegisteryOwner-Schnittstelle. (aosp/1290888)- – Die APIs
startActivityForResult()/onActivityResult()undonRequestPermissionsResult()aufComponentActivitywurden eingestellt. Verwenden Sie die Activity Result APIs. (b/154751887)
Fehlerkorrekturen
- Wenn Sie die Verträge
GetMultipleContentsundOpenMultipleDocumentsverwenden und ein einzelnes Element auswählen, wird es jetzt korrekt an Ihren Callback zurückgegeben. (b/152941153)
Version 1.2.0-alpha03
1. April 2020
androidx.activity:activity:1.2.0-alpha03 und androidx.activity:activity-ktx:1.2.0-alpha03 sind veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.
Neue Funktionen
- Die Verträge
TakeVideo,PickContact,GetContent,GetContents,OpenDocument,OpenDocuments,OpenDocumentTreeundCreateDocumentwurden der Gruppe der vonActivityResultContractsbereitgestellten vorgefertigten Verträge hinzugefügt. (aosp/1262482, aosp/1266916, aosp/1268960) - Die Activity Result APIs unterstützen jetzt das Starten einer Aktivität für ein Ergebnis mit einem optionalen
ActivityOptionsCompat. (b/151860054)
API-Änderungen
- Der
TakePicture-Vertrag akzeptiert jetzt eineUri-Eingabe für den Speicherort des Bildes. Der vorherige Vertrag, für den keine Eingabe erforderlich ist, wurde inTakePicturePreviewumbenannt. (aosp/1262482) - Die Methode
registerActivityResultCallback()fürActivityResultRegistrywurde inregister()umbenannt. (aosp/1267621) - Die Methode
dispose()inActivityResultLauncherwurde inunregister()umbenannt und dieunregisterResultCallback()inActivityResultRegistrywurde entfernt. (aosp/1267621) - Die
createIntent()-Methode vonActivityResultContactakzeptiert jetzt zusätzlich zur Eingabe auch einContext, um explizite Intents zu erstellen. (aosp/1238800) - Ein
ActivityResultContractkann jetztgetSynchronousResult()überschreiben, um ein Ergebnis zu liefern, ohnestartActivityForResultaufzurufen. Dies wird von den VerträgenRequestPermissionundRequestPermissionsverwendet, um den Status „Gewährt“ korrekt zu übermitteln, wenn die angeforderten Berechtigungen bereits gewährt wurden. (b/151110799) - Der zuvor verfügbare Vertrag
Dialwurde entfernt, daIntentnicht für die Verwendung mitstartActivityForResult()vorgesehen ist. (aosp/1266916) - Viele der Activity Result APIs, die nicht erweitert werden sollen, sind jetzt
final. Dazu gehörengetActivityResultRegistry(), dieprepareCall()-Methoden, alle Methoden vonActivityResultRegistrymit Ausnahme voninvoke()sowie eine Reihe der Standardverträge, die keine optionalen Extras unterstützen. (b/152439361)
Fehlerkorrekturen
- Es wurde ein
NullPointerExceptioninActivityResultRegistrybehoben, der auftrat, wenn versucht wurde, Ergebnisse an einen Callback zu senden, der nach einer Konfigurationsänderung noch nicht neu registriert wurde.ActivityResultRegistryspeichert diese ausstehenden Ergebnisse jetzt und sendet sie, wenn der Callback neu registriert wird. (b/152137004)
Version 1.2.0-alpha02
18. März 2020
androidx.activity:activity:1.2.0-alpha02 und androidx.activity:activity-ktx:1.2.0-alpha02 sind veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.
Neue Funktionen
- ActivityResultRegistry:
ComponentActivitybietet jetzt einActivityResultRegistry, mit dem Sie die AbläufestartActivityForResult()+onActivityResult()undrequestPermissions()+onRequestPermissionsResult()verarbeiten können, ohne Methoden in Ihrer Aktivität oder Ihrem Fragment zu überschreiben. Außerdem wird durchActivityResultContractdie Typsicherheit erhöht und es werden Hooks zum Testen dieser Abläufe bereitgestellt. Weitere Informationen finden Sie unter Ergebnis einer Aktivität abrufen. (b/125158199)
Version 1.2.0-alpha01
4. März 2020
androidx.activity:activity:1.2.0-alpha01 und androidx.activity:activity-ktx:1.2.0-alpha01 sind veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Neue Funktionen
- Unterstützung für die
ViewTreeLifecycleOwner.get(View)API, die in Lifecycle2.3.0-alpha01hinzugefügt wurde. Sie gibt die Activity alsLifecycleOwnerfür alle direkt der Activity hinzugefügten Ansichten zurück. (aosp/1182955)
Fehlerkorrekturen
- Eine Regression wurde behoben, die in der Aktivität
1.1.0eingeführt wurde, wenn sie auf älteren Versionen der Plattform ausgeführt wurde. In diesem Fall führteonBackPressed()aufgrund eines Fehlers in derandroid.app.FragmentManagerzu einemIllegalStateException. (b/146290338)
Version 1.1.0
Version 1.1.0
22. Januar 2020
androidx.activity:activity:1.1.0 ist veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Lifecycle ViewModel SavedState Integration:
SavedStateViewModelFactoryist jetzt die Standard-Fabrikmethode, die verwendet wird, wennby viewModels(), derViewModelProvider-Konstruktor oderViewModelProviders.of()mit einemComponentActivityoder seinen abgeleiteten Klassen verwendet wird.
Version 1.1.0-rc03
4. Dezember 2019
androidx.activity:activity:1.1.0-rc03 und androidx.activity:activity-ktx:1.1.0-rc03 sind veröffentlicht. Version 1.1.0-rc03 enthält diese Commits.
Änderungen an Abhängigkeiten
- Die Aktivität hängt jetzt von Lifecycle
2.2.0-rc03und Lifecycle ViewModel SavedState1.0.0-rc03ab.
Version 1.1.0-rc02
7. November 2019
androidx.activity:activity:1.1.0-rc02 und androidx.activity:activity-ktx:1.1.0-rc02 sind veröffentlicht. Version 1.1.0-rc02 enthält diese Commits.
Änderungen an Abhängigkeiten
- Die Aktivität hängt jetzt vom Lebenszyklus
2.2.0-rc02ab.
Version 1.1.0-rc01
23. Oktober 2019
androidx.activity:activity:1.1.0-rc01 und androidx.activity:activity-ktx:1.1.0-rc01 werden ohne Änderungen gegenüber 1.1.0-beta01 veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Version 1.1.0-beta01
9. Oktober 2019
androidx.activity:activity:1.1.0-beta01 und androidx.activity:activity-ktx:1.1.0-beta01 sind veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Änderungen an Abhängigkeiten
- Die Aktivität hängt jetzt von SavedState 1.0.0 ab.
Version 1.1.0-alpha03
5. September 2019
androidx.activity:activity:1.1.0-alpha03 und androidx.activity:activity-ktx:1.1.0-alpha03 sind veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
- Die Aktivität hängt jetzt von Core 1.1.0 (stabil) ab.
Diverse Fehlerkorrekturen
- Die Aktivität hängt jetzt von Lifecycle
2.2.0-alpha04ab.
Version 1.1.0-alpha02
7. August 2019
androidx.activity:activity:1.1.0-alpha02 und androidx.activity:activity-ktx:1.1.0-alpha02 sind veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
SavedStateViewModelFactoryist jetzt die Standard-Factory, die verwendet wird, wennby viewModels(), derViewModelProvider-Konstruktor oderViewModelProviders.of()mit einemComponentActivityverwendet wird (b/135716331).
Version 1.1.0-alpha01
2. Juli 2019
androidx.activity:activity:1.1.0-alpha01 und androidx.activity:activity-ktx:1.1.0-alpha01 sind veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
activityist jetzt von Lifecycle2.2.0-alpha02abhängig. (aosp/1007817)activity-ktxhat eine Abhängigkeit vonlifecycle-runtime-ktxhinzugefügt. Sie müssen sie nicht mehr explizit zu Ihren Abhängigkeiten hinzufügen, wenn Sieactivity-ktxoder Bibliotheken verwenden, die vonactivity-ktxabhängen (z. B.fragment-ktx). (aosp/987162)
Version 1.0.0
Version 1.0.0
5. September 2019
androidx.activity:activity:1.0.0 und androidx.activity:activity-ktx:1.0.0 sind veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Wichtige Funktionen von Version 1.0.0
- ComponentActivity:
ComponentActivitydient als neue Basisklasse fürFragmentActivityin Fragment1.1.0und damit auch fürAppCompatActivityin AppCompat1.1.0. - activity-ktx: Das Modul
activity-ktxenthält eineby viewModels-Kotlin-Eigenschaftserweiterung für den Zugriff auf ViewModels. Dieses Modul wird automatisch eingebunden, wenn Siefragment-ktxaus Fragment1.1.0einbinden. - OnBackPressedDispatcher: Als zusammensetzbare Alternative zum Überschreiben von
onBackPressed()können Sie jetzt einenOnBackPressedCallbackin einem beliebigenLifecycleOwner(z. B. einem Fragment) registrieren, um Ereignisse des Buttons „Zurück“ abzufangen.activity-ktxwurde ein Lambda mit Receiver-VersionaddCallbackhinzugefügt. Weitere Informationen finden Sie unter Dokumentation zur benutzerdefinierten Rückwärtsnavigation bereitstellen. - Einstellung von onRetainCustomNonConfigurationInstance: Die APIs
onRetainCustomNonConfigurationInstance()undgetLastCustomNonConfigurationInstance()wurden eingestellt. Es wird dringend empfohlen, ViewModels zum Speichern von Status zu verwenden, der nicht zur Konfiguration gehört, da sie eine zusammensetzbare Lösung für jedesViewModelStoreOwnerbieten, die die Inhaberschaft der beibehaltenen Objekte klar macht und einenonCleared()-Callback zum Bereinigen von Ressourcen bereitstellt, wenn die Aktivität endgültig zerstört wird.
Version 1.0.0-rc01
2. Juli 2019
androidx.activity:activity:1.0.0-rc01 und androidx.activity:activity-ktx:1.0.0-rc01 werden ohne Änderungen gegenüber 1.0.0-beta01 veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Version 1.0.0-beta01
5. Juni 2019
androidx.activity::activity:1.0.0-beta01 und androidx.activity:activity-ktx:1.0.0-beta01 werden ohne Änderungen gegenüber 1.0.0-alpha08 veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Version 1.0.0-alpha08
7. Mai 2019
androidx.activity:activity:1.0.0-alpha08 und androidx.activity:activity-ktx:1.0.0-alpha08 sind veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
API-Änderungen
- Breaking Change: Die zuvor als veraltet markierten Methoden
addOnBackPressedCallbackundremoveOnBackPressedCallbackinComponentActivitywurden entfernt. aosp/953857 - Die Methoden
setEnabled()undisEnabled()vonOnBackPressedCallbacksind jetzt endgültig. b/131416833 - Die Methode
remove()vonOnBackPressedCallbackist jetzt final. aosp/952720 OnBackPressedDispatcherhat jetzt öffentliche Konstruktoren, sodass Sie Ihre eigenen Instanzen für Tests usw. erstellen können. aosp/953431onBackPressed()fürComponentActivityist jetzt explizit als@MainThreadgekennzeichnet. aosp/952721
Diverse Fehlerkorrekturen
- Es wurde ein
ConcurrentModificationExceptionbehoben, der beim Aufrufen vonremove()über diehandleOnBackPressed()-Methode einesOnBackPressedCalbackauftrat, das mit einemLifecycleOwnerhinzugefügt wurde. b/131765095
Version 1.0.0-alpha07
25. April 2019
androidx.activity:activity:1.0.0-alpha07 und androidx.activity:activity-ktx:1.0.0-alpha07 sind veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
API-Änderungen
In dieser Version wurde die Verarbeitung von onBackPressed() grundlegend geändert. Weitere Informationen finden Sie in der aktualisierten Dokumentation zu benutzerdefinierten Rückgaben.
- Die Methoden für
OnBackPressedCallbackundOnBackPressedDispatcherwurden als@MainThreadmarkiert. (aosp/943813) - Die
handleOnBackPressed()-Methode gibt keinebooleanmehr zurück. Stattdessen istOnBackPressedCallbackjetzt eine abstrakte Klasse, die aktiviert oder deaktiviert werden kann. Nur wenn die neueisEnabled()-Methode „true“ zurückgibt, wirdhandleOnBackPressed()aufgerufen. In dieser Methode müssen Sie den Button „Zurück“ verarbeiten. (aosp/944518) - Die
addCallback-Methoden vonOnBackPressedDispatchergeben keineCancellable-Instanz mehr zurück.OnBackPressedCallbackenthalten jetzt eineremove()-Methode, die diese Funktion erfüllt. So können Sieremove()währendhandleOnBackPressed()aufrufen. (aosp/944519) (aosp/946316) activity-ktxenthält jetzt einen Callback mit Empfängerbereich füraddCallback, der eine Lambda-Funktion akzeptiert, diehandleOnBackPressed()implementiert und Zugriff aufisEnabledundremove()hat (aosp/944520).
Version 1.0.0-alpha06
3. April 2019
androidx.activity:activity:1.0.0-alpha06 und androidx.activity:activity-ktx:1.0.0-alpha06 sind veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
API-Änderungen
- ComponentActivity enthält jetzt einen zweiten Konstruktor, der ein
@LayoutRes intakzeptiert. Dadurch wird das bisherige Verhalten ersetzt, bei dem Ihre AppCompatActivity-Klasse mit@ContentViewannotiert wurde. Dieser Ansatz funktioniert sowohl in App- als auch in Bibliotheksmodulen. (b/128352521) - Die
OnBackPressedCallback-bezogenen APIs in ComponentActivity wurden zugunsten der neuenOnBackPressedDispatchereingestellt, die übergetOnBackPressedDispatcher()abgerufen werden kann. (aosp/922523) - Methoden zum Hinzufügen eines neuen
OnBackPressedCallbackzumOnBackPressedDispatchergeben jetzt einCancellable-Objekt zurück. Dadurch kann der Callback entfernt werden, ohne dass ein expliziter Verweis auf dasOnBackPressedDispatchererforderlich ist. (aosp/922523) - Wenn Sie jetzt ein
OnBackPressedCallbackmit einem zugehörigenLifecycleOwnerhinzufügen, wird dasOnBackPressedCallbackbeim Starten des Lebenszyklus hinzugefügt und beim Beenden des Lebenszyklus entfernt. (aosp/922523)
Version 1.0.0-alpha05
13. März 2019
androidx.activity:activity:1.0.0-alpha05 und androidx.activity:activity-ktx:1.0.0-alpha05 sind veröffentlicht. Eine vollständige Liste der in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
@ContentView-Vermerke werden jetzt im Cache gespeichert (b/123709449).
Version 1.0.0-alpha04
30. Januar 2019
androidx.activity:activity 1.0.0-alpha04 und androidx.activity:activity-ktx 1.0.0-alpha04 sind veröffentlicht.
Neue Funktionen
- Unterstützung für die Klassenannotation
@ContentViewwurde hinzugefügt. Damit können Sie angeben, welche XML-Layoutdatei als Alternative zur Verwendung vonsetContentView()aufgebläht werden soll. (aosp/837619)
API-Änderungen
- Es wurde ein Hinweis hinzugefügt, dass
getViewModelStore()nicht überschrieben werden sollte. In einer zukünftigen Version wird endgültig festgelegt. Wenn Sie diese Methode derzeit überschreiben, reichen Sie bitte einen Feature Request ein. (aosp/837619)
Diverse Fehlerkorrekturen
- Das Modul
activityhängt jetzt von Version 2.1.0-alpha02 von ViewModel ab, um der Abhängigkeit des Modulsactivity-ktxzu entsprechen.
Version 1.0.0-alpha03
17. Dezember 2018
androidx.activity 1.0.0-alpha03 ist veröffentlicht.
Neue Funktionen
- ComponentActivity implementiert jetzt
BundleSavedStateRegistryOwnerund hängt von der neu veröffentlichten SavedState-Bibliothek ab [aosp/815133]. - ComponentActivity umgeht jetzt einen Fehler im Android-Framework, der dazu führen würde, dass InputMethodManager die zuletzt fokussierte Ansicht verliert [b/37122102].
Version 1.0.0-alpha02
3. Dezember 2018
API-Änderungen
- Es wurde ein Hinweis hinzugefügt, dass
getLifecycle()nicht überschrieben werden sollte und in einer zukünftigen Version zufinalwird. Wenn Sie diese Methode derzeit überschreiben, reichen Sie bitte einen Feature Request ein. (aosp/815834)
Version 1.0.0-alpha01
5. November 2018
Mit androidx.activity 1.0.0-alpha01 wird ComponentActivity eingeführt, eine neue Basisklasse der vorhandenen FragmentActivity und AppCompatActivity.
Neue Funktionen
- Sie können jetzt eine
OnBackPressedCallbacküberaddOnBackPressedCallbackregistrieren, umonBackPressed()-Callbacks zu erhalten, ohne die Methode in Ihrer Aktivität überschreiben zu müssen. - Es wurde ein neuer
by viewModels()-Kotlin-Property-Delegate zum Abrufen vonViewModels aus einemComponentActivityhinzugefügt. - Ausstehende Eingabeereignisse (z. B. Klicks) werden jetzt in
onStop()abgebrochen.
API-Änderungen
- Die Implementierung von
LifecycleOwnerundViewModelStoreOwnerwurde vonFragmentActivitynachComponentActivityverschoben. onRetainCustomNonConfigurationInstancewurde eingestellt. Verwenden Sie einViewModel, um Objekte zu speichern, die Konfigurationsänderungen überstehen müssen.