Aktywność
| Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja alfa |
|---|---|---|---|---|
| 23 września 2026 r. | 1.13.0 | - | - | 1.14.0-alpha03 |
Deklarowanie zależności
Aby dodać zależność od aktywności, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:
Odlotowe
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") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Prześlij opinię
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz oddać głos na istniejący problem, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.14
Wersja 1.14.0-alpha03
23 września 2026 r.
androidx.activity:activity:1.14.0-alpha03, androidx.activity:activity-compose:1.14.0-alpha03 i androidx.activity:activity-ktx:1.14.0-alpha03 są udostępnione. Wersja 1.14.0-alpha03 zawiera te zmiany.
Zmiany w interfejsie API
- Użyj
WindowCompat#enableEdgeToEdge(Window)zamiastEdgeToEdge#enable()(Ibff3e) - Przeciążenia pola tekstowego Material 2, które akceptują parametry
value, onValueChange, zostały wycofane. Przejdź na przeciążenie, które używaTextFieldStatedo przenoszenia stanu. (I6b841, b/556234973)
Poprawki błędów
- Zależność
androidx.lifecycle:lifecycle-runtimezostała zaktualizowana do wersji 2.10.0. Ta wersja jest wymagana, aby można było uruchamiać kontrole lint w pakiecie czasu działania cyklu życia w przypadku wtyczki Androida do obsługi Gradle w wersji 9.5.0-alpha04 lub nowszej. (I99bfd, b/556807521) ComponentActivitynowadefaultViewModelArgsobsługuje teraz również konfigurację bezpośredniego uruchamiania. (I10a08)
Wersja 1.14.0-alpha02
9 września 2026 r.
androidx.activity:activity:1.14.0-alpha02, androidx.activity:activity-compose:1.14.0-alpha02 i androidx.activity:activity-ktx:1.14.0-alpha02 są udostępnione. Wersja 1.14.0-alpha02 zawiera te zmiany.
Poprawki błędów
compileSdkbibliotek Compose zaktualizowanych do wersji 37.1. Wymaga to przechodniego zaktualizowaniacompileSdkwe wszystkich aplikacjach i bibliotekach korzystających z Compose. (I05b0f)
Wersja 1.14.0-alpha01
26 sierpnia 2026 r.
androidx.activity:activity:1.14.0-alpha01, androidx.activity:activity-compose:1.14.0-alpha01 i androidx.activity:activity-ktx:1.14.0-alpha01 są udostępnione. Wersja 1.14.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodatki do intencji nie są już automatycznie dodawane do
defaultViewModelCreationExtrasw przypadku eksportowanych aktywności. Deweloperzy eksportowanych działań mogą zastąpićdefaultViewModelArgs, aby wyraźnie podać dodatkowe informacje o zweryfikowanym zamiarze. (Id0cb6, b/213646066) - Biblioteka Activity udostępnia teraz funkcje fabryczne
NavigationEventDispatcherOwneriOnBackPressedDispatcherOwner, które ułatwiają tworzenie instancji odpowiednich komponentów. (I1d259, Iadd5c) OnBackPressedDispatcherudostępnia teraz rozszerzenieasNavigationEventDispatcher, które umożliwia łatwe przekształcenie go wNavigationEventDispatcher. (Id11cf)
Wersja 1.13
Wersja 1.13.0
11 marca 2026 r.
androidx.activity:activity:1.13.0, androidx.activity:activity-compose:1.13.0 i androidx.activity:activity-ktx:1.13.0 są udostępnione. Wersja 1.13.0 zawiera te zmiany.
Ważne zmiany od wersji 1.12.0:
ComponentActivityimplementuje teraz interfejsOnPictureInPictureUiStateChangedProvider, co oznacza, że może się integrować z nowym artefaktemcore:core-pip, który umożliwia odbieranie zdarzeń zmiany stanu interfejsu obrazu w obrazie przez dowolny komponent.EdgeToEdgejest teraz ponownie wywoływana przy zmianach konfiguracji, aby zapewnić prawidłową aktualizację koloru paska stanu systemu.
Wersja 1.13.0-rc01
25 lutego 2026 r.
androidx.activity:activity:1.13.0-rc01, androidx.activity:activity-compose:1.13.0-rc01 i androidx.activity:activity-ktx:1.13.0-rc01 są udostępnione. Wersja 1.13.0-rc01 zawiera te zmiany.
Poprawki błędów
- W aktywności 1.12.4: funkcja Zdjęcia i filmy
ActivityResultContractsbędzie teraz prawidłowo uruchamiana na urządzeniach z najnowszymi poprawkami zabezpieczeń URI. (I61201, b/433708587)
Wersja 1.13.0-alpha01
14 stycznia 2026 r.
androidx.activity:activity:1.13.0-alpha01, androidx.activity:activity-compose:1.13.0-alpha01 i androidx.activity:activity-ktx:1.13.0-alpha01 są udostępnione. Wersja 1.13.0-alpha01 zawiera te zmiany.
Nowe funkcje
EdgeToEdgejest teraz ponownie wywoływana przy zmianach konfiguracji, aby zapewnić prawidłową aktualizację koloru paska stanu systemu. (Id1381, b/364713509)
Zmiany w interfejsie API
ComponentActivityimplementuje teraz interfejsOnPictureInPictureUiStateChangedProvider, co oznacza, że może się integrować z nowym artefaktemcore:core-pip, który umożliwia odbieranie przez dowolny komponent zdarzeń zmiany stanu interfejsu obrazu w obrazie. (I4df5c, b/441310308)
Poprawki błędów
- Działanie 1.12.2: rozwiązaliśmy problem, który powodował, że ręczne ustawienie wartości
isEnabledw przypadku komponentuOnBackPressedCallbackuwzględniającego cykl życia zastępowało stanLifecycle, co mogło powodować awarie. (I7d898, b/461999811)
Wersja 1.12
Wersja 1.12.4
11 lutego 2026 r.
androidx.activity:activity:1.12.4, androidx.activity:activity-compose:1.12.4 i androidx.activity:activity-ktx:1.12.4 są udostępnione. Wersja 1.12.4 zawiera te zmiany.
Poprawki błędów
- Aplikacja Zdjęcia i filmy
ActivityResultContractsbędzie teraz prawidłowo uruchamiana na urządzeniach z najnowszymi poprawkami zabezpieczeń URI. (I61201, b/433708587)
Wersja 1.12.3
28 stycznia 2026 r.
androidx.activity:activity:1.12.3, androidx.activity:activity-compose:1.12.3 i androidx.activity:activity-ktx:1.12.3 są udostępnione. Wersja 1.12.3 zawiera te zmiany.
Wersja 1.12.2
17 grudnia 2025 r.
androidx.activity:activity:1.12.2, androidx.activity:activity-compose:1.12.2 i androidx.activity:activity-ktx:1.12.2 są udostępnione. Wersja 1.12.2 zawiera te zmiany.
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że ręczne ustawienie wartości isEnabled w przypadku komponentu
OnBackPressedCallbackuwzględniającego cykl życia powodowało zastąpienie stanu cyklu życia, co mogło prowadzić do awarii. (I7d898, b/461999811)
Wersja 1.12.1
3 grudnia 2025 r.
androidx.activity:activity:1.12.1, androidx.activity:activity-compose:1.12.1 i androidx.activity:activity-ktx:1.12.1 są udostępnione. Wersja 1.12.1 zawiera te zmiany.
Zaktualizowana zależność
- Aktywność zależy teraz od zdarzenia nawigacji w wersji 1.0.1
Wersja 1.12.0
19 listopada 2025 r.
androidx.activity:activity:1.12.0, androidx.activity:activity-compose:1.12.0 i androidx.activity:activity-ktx:1.12.0 są udostępnione. Wersja 1.12.0 zawiera te zmiany.
Ważne zmiany od wersji 1.11.0:
- Biblioteka
Androidx Activityjest teraz zależna od nowej bibliotekiNavigationEvent. Obejmuje to obsługęNavigationEventDispatcherwComponentActivityiComponentDialog. InterfejsyOnBackPressedAPI zostały również przepisane na interfejsyNavigationEventAPI, aby zapewnić zgodność wsteczną z poprzednią biblioteką.
Wersja 1.12.0-rc01
5 listopada 2025 r.
androidx.activity:activity:1.12.0-rc01, androidx.activity:activity-compose:1.12.0-rc01 i androidx.activity:activity-ktx:1.12.0-rc01 są udostępnione. Wersja 1.12.0-rc01 zawiera te zmiany.
Poprawki błędów
- Naprawianie błędów w czasie działania w przypadku funkcji
BackHandleriPredictiveBackHandlerw aplikacjach korzystających z niestandardowych klas Activity. Te funkcje kompozycyjne bezpiecznie wracają teraz doLocalOnBackPressedDispatcherOwner, zachowując kolejność wysyłania w aplikacjach obsługującychNavigationEventDispatcherOwner. (I43873)
Wersja 1.12.0-beta01
22 października 2025 r.
androidx.activity:activity:1.12.0-beta01, androidx.activity:activity-compose:1.12.0-beta01 i androidx.activity:activity-ktx:1.12.0-beta01 są udostępnione. Wersja 1.12.0-beta01 zawiera te zmiany.
Zmiany w interfejsie API
- Wprowadzamy eksperymentalny interfejs
ActivityFlagsAPI do zarządzania zmianami w zachowaniu środowiska wykonawczego i migracjami. Pierwsza flaga umożliwia stabilne sortowanie w przypadkuOnBackPressedCallback, dzięki czemu przechodzenie wstecz jest bardziej przewidywalne w przypadku zmian cyklu życia. Deweloperzy mogą zrezygnować z tej funkcji, ustawiając wartośćActivityFlags.isOnBackPressedLifecycleOrderMaintained = false. (I06bdf, Id08bb, I439aa, b/422730945, b/450533622)
Aktualizacja zależności
- Zaktualizuj zależności cyklu życia do wersji 2.9.4 (Ic9fb2)
Wersja 1.12.0-alpha09
24 września 2025 r.
androidx.activity:activity:1.12.0-alpha09, androidx.activity:activity-compose:1.12.0-alpha09 i androidx.activity:activity-ktx:1.12.0-alpha09 są udostępnione. Wersja 1.12.0-alpha09 zawiera te zmiany.
Zmiany zależności
- Aktywność zależy teraz od zdarzenia nawigacji w wersji 1.0.0-alpha08.
Wersja 1.12.0-alpha08
10 września 2025 r.
androidx.activity:activity:1.12.0-alpha08, androidx.activity:activity-compose:1.12.0-alpha08 i androidx.activity:activity-ktx:1.12.0-alpha08 są udostępnione. Wersja 1.12.0-alpha08 zawiera te zmiany.
Aktualizacja zależności
- Aktywność zależy teraz od zdarzenia nawigacji w wersji 1.0.0-alpha08.
Wersja 1.12.0-alpha07
27 sierpnia 2025 roku
androidx.activity:activity:1.12.0-alpha07, androidx.activity:activity-compose:1.12.0-alpha07 i androidx.activity:activity-ktx:1.12.0-alpha07 są udostępnione. Wersja 1.12.0-alpha07 zawiera te zmiany.
Poprawki błędów
- Rozwiązaliśmy problem z
EdgeToEdgena interfejsie API 35, w którym niewidoczne widoki powodowały nieoczekiwane wstawki pomiarowe. (If49ff)
Aktualizacja zależności
- Aktywność zależy teraz od zdarzenia nawigacji
1.0.0-alpha07.
Wersja 1.12.0-alpha06
13 sierpnia 2025 r.
androidx.activity:activity:1.12.0-alpha06, androidx.activity:activity-compose:1.12.0-alpha06 i androidx.activity:activity-ktx:1.12.0-alpha06 są udostępnione. Wersja 1.12.0-alpha06 zawiera te zmiany.
Aktualizacja MinSdk
- Domyślny
minSdkdla AndroidaX został przeniesiony z API 21 na API 23 (Ibdfca, b/380448311, b/435705964, b/435705223).
Aktualizacje dokumentacji
- Zaktualizowano dokumentację KDocs dla
PredictiveBackHandler, aby zwrócić uwagę na znany problem z czasem, w którym może przetworzyć gest w tej samej klatce, w której jest wyłączony. (I5be5c, b/431534103) - Zaktualizowaliśmy dokumentację KDocs dla funkcji
BackHandleriPredictiveBackHandler, aby wyraźnie określić zachowanie „ostatnia kompozycja wygrywa”, a także zalecić bezwarunkową kompozycję z użyciem flagienabled. (I7ab94)
Aktualizacja zależności
- Aktywność zależy teraz od zdarzenia nawigacji
1.0.0-alpha06.
Wersja 1.12.0-alpha05
30 lipca 2025 r.
androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05 i androidx.activity:activity-ktx:1.12.0-alpha05 są udostępnione. Wersja 1.12.0-alpha05 zawiera te zmiany.
Aktualizacja zależności
- Aktywność zależy teraz od zdarzenia nawigacji
1.0.0-alpha05.
Wersja 1.12.0-alpha04
2 lipca 2025 r.
androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04 i androidx.activity:activity-ktx:1.12.0-alpha04 są udostępnione. Wersja 1.12.0-alpha04 zawiera te zmiany.
Zmiany zależności
- Aktywność zależy teraz od NavigationEvent Alpha04
Wersja 1.12.0-alpha03
18 czerwca 2025 r.
androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03 i androidx.activity:activity-ktx:1.12.0-alpha03 są udostępnione. Wersja 1.12.0-alpha03 zawiera te zmiany.
Poprawki błędów
Zmienne
OnBackPressedDispatcheriNavigationEventDispatchersą teraz inicjowane z opóźnieniem wComponentActivity. (I710e6)Rozwiązaliśmy problemy z
OnBackPressedDistpatcher, które powodowały:- Tylko najnowszy dyspozytor
OnBackPressedCallbackzostał dodany do powiadomień o jego stanie włączenia (b/418715930). OnBackPressedDispatcherusuwa nieprawidłowe wywołanie zwrotne podczas korzystania z funkcjiaddCallback, która przyjmuje cykl życia. (b/422714753)OnBackPressedDispatcher.remove()nie usuwa wszystkich wystąpień zarejestrowanegoOnBackPressedCallback. (b/423024414)
- Tylko najnowszy dyspozytor
Wersja 1.12.0-alpha02
4 czerwca 2025 r.
androidx.activity:activity:1.12.0-alpha02, androidx.activity:activity-compose:1.12.0-alpha02 i androidx.activity:activity-ktx:1.12.0-alpha02 są udostępnione. Wersja 1.12.0-alpha02 zawiera te zmiany.
Poprawki błędów
- Z NavigationEvent
1.0.0-alpha02: naprawionoConcurrentModificationException, który mógł wystąpić, gdy wywołanoNavigationEventCallback.remove()z powodu jednoczesnej modyfikacji wewnętrznej listy elementów zamykanych. (I63066)
Wersja 1.12.0-alpha01
20 maja 2025 r.
androidx.activity:activity:1.12.0-alpha01, androidx.activity:activity-compose:1.12.0-alpha01 i androidx.activity:activity-ktx:1.12.0-alpha01 są udostępnione. Wersja 1.12.0-alpha01 zawiera te zmiany.
Nowe funkcje
ComponentActivityiComponentDialogzostały zintegrowane z NavigationEvent1.0.0-alpha01za pomocą interfejsuNavigationEventDispatcherOwnerAPI. Teraz możesz pobraćNavigationEventDispatcherz urządzeniaComponentActivityza pomocą polanavigationEventDispatcher. PonieważOnBackPressedDispatcherzostał napisany od nowa na podstawie nowej biblioteki, wszystkie poprzednie zastosowania powinny nadal działać prawidłowo. Od tej pory używaj zasadNavigationEventDispatcheriNavigationEventCallback. (Ib8eed, I6cc44, Ib7724, I9a0f7,b/412597031, b/415028038, b/412596729, b/412597140, b/412596012)
Wersja 1.11
Wersja 1.11.0
10 września 2025 r.
androidx.activity:activity:1.11.0, androidx.activity:activity-compose:1.11.0 i androidx.activity:activity-ktx:1.11.0 są udostępnione. Wersja 1.11.0 zawiera te zmiany.
Ważne zmiany od wersji 1.10.0:
- Dodano interfejs
MediaCapabilitiesAPI doPickVisualMediaRequest, aby umożliwić aplikacjom określanie możliwości multimedialnych, takich jak obsługiwane typy HDR. - Aktywność jest teraz kompilowana za pomocą interfejsu API 36.
Wersja 1.11.0-rc01
23 kwietnia 2025 r.
androidx.activity:activity:1.11.0-rc01, androidx.activity:activity-compose:1.11.0-rc01 i androidx.activity:activity-ktx:1.11.0-rc01 są udostępnione. Wersja 1.11.0-rc01 zawiera te zmiany.
Wersja 1.11.0-beta01
9 kwietnia 2025 r.
androidx.activity:activity:1.11.0-beta01, androidx.activity:activity-compose:1.11.0-beta01 i androidx.activity:activity-ktx:1.11.0-beta01 są udostępnione. Wersja 1.11.0-beta01 zawiera te zmiany.
Wersja 1.11.0-alpha02
26 marca 2025 r.
androidx.activity:activity:1.11.0-alpha02, androidx.activity:activity-compose:1.11.0-alpha02 i androidx.activity:activity-ktx:1.11.0-alpha02 są udostępnione. Wersja 1.11.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Zintegrowano nowe funkcje
EDGE_NONEiframeTimeMillisz Androida 16 Beta03 zBackEventCompatudostępnianym przez funkcjehandleOnBackStartedihandleOnBackProgressedOnBackPressedCallback.
Aktualizacje zależności
- Aktywność jest teraz kompilowana za pomocą interfejsu API 36. (I510e8, b/301910674)
Wersja 1.11.0-alpha01
12 marca 2025 r.
androidx.activity:activity:1.11.0-alpha01, androidx.activity:activity-compose:1.11.0-alpha01 i androidx.activity:activity-ktx:1.11.0-alpha01 są udostępnione. Wersja 1.11.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Dodano interfejs
MediaCapabilitiesAPI doPickVisualMediaRequest, aby umożliwić aplikacjom określanie możliwości multimedialnych, takich jak obsługiwane typy HDR. (Ic3ee7)
Wersja 1.10
Wersja 1.10.1
26 lutego 2025 r.
androidx.activity:activity:1.10.1, androidx.activity:activity-compose:1.10.1 i androidx.activity:activity-ktx:1.10.1 są udostępnione. Wersja 1.10.1 zawiera te zmiany.
Poprawki błędów
- Problemy z
ViewTreeOnBackPressedDispatcherOwnersiFullyDrawnReporterOwnersmożna teraz rozwiązywać za pomocą rozłącznych elementów nadrzędnych widoku, np.ViewOverlay. Więcej informacji o rozłącznych elementach nadrzędnych widoku znajdziesz w informacjach o wersji podstawowej lub w dokumentacji wViewTree.setViewTreeDisjointParent. (Ie7750)
Wersja 1.10.0
15 stycznia 2025 r.
androidx.activity:activity:1.10.0, androidx.activity:activity-compose:1.10.0 i androidx.activity:activity-ktx:1.10.0 są udostępnione. Wersja 1.10.0 zawiera te zmiany.
Ważne zmiany od wersji 1.9.0
PhotoPickerumożliwia teraz wybieranie obrazów w określonej kolejności i wybieranie karty (albumy lub obrazy), która ma być początkowo widoczna.- Kontrakty
PickVisualMediaiPickMultipleVisualMediaActivity Result, które wywołują selektor zdjęć, nie delegują już bezpośrednio do usług Google Play, jeśli selektor zdjęć w systemie jest niedostępny, ale używają publicznej czynnościACTION_SYSTEM_FALLBACK_PICK_IMAGESi powiązanych dodatków, aby zapewnić producentom OEM i aplikacjom systemowym spójne działanie selektora zdjęć jako rezerwy. - Nowa funkcja
LocalActivitycomposition local, która udostępniaActivitydla bieżącego zakresu, dzięki czemu deweloperzy nie muszą pobieraćActivityzLocalContext.
Wersja 1.10.0-rc01
11 grudnia 2024 r.
androidx.activity:activity:1.10.0-rc01, androidx.activity:activity-compose:1.10.0-rc01 i androidx.activity:activity-ktx:1.10.0-rc01 są udostępnione. Wersja 1.10.0-rc01 zawiera te zmiany.
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że zmiana stanu włączenia, gdy
PredictiveBackHandlerjest obecnie aktywny, powodowała natychmiastowe przerwanie wywołania zwrotnego. Teraz dokończy bieżące wywołanie zwrotne niezależnie od zmian stanu włączenia. (Ib8719)
Wersja 1.10.0-beta01
13 listopada 2024 r.
Wersje androidx.activity:activity:1.10.0-beta01, androidx.activity:activity-compose:1.10.0-beta01 i androidx.activity:activity-ktx:1.10.0-beta01 zostały udostępnione bez zmian w porównaniu z ostatnią wersją alfa. Wersja 1.10.0-beta01 zawiera te zmiany.
Wersja 1.10.0-alpha03
30 października 2024 r.
androidx.activity:activity:1.10.0-alpha03, androidx.activity:activity-compose:1.10.0-alpha03 i androidx.activity:activity-ktx:1.10.0-alpha03 są udostępnione. Wersja 1.10.0-alpha03 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano nową lokalną kompozycję
LocalActivity, która udostępniaActivitydla bieżącego zakresu, dzięki czemu deweloperzy nie muszą pobieraćActivityzLocalContext. Zawiera też nową regułę lint, która sprawdza, czyLocalContextjest nieprawidłowo rzutowany naActivity. (I7746a, b/283009666)
Poprawki błędów
- Z Activity
1.9.3:PredictiveBackHandlernie będzie już wywoływać funkcji zwrotnej po wyłączeniu modułu obsługi. Rozwiąże to problem, w wyniku którego funkcjaNavHostz Navigation Compose zgłaszała błądIndexOutOfBoundsException. (I3f75e, b/365027664, b/340202286)
Aktualizacja zależności
- Activity Compose zależy teraz od środowiska wykonawczego Compose w wersji 1.7.0 (I7746a, b/283009666).
Wersja 1.10.0-alpha02
4 września 2024 r.
androidx.activity:activity:1.10.0-alpha02, androidx.activity:activity-compose:1.10.0-alpha02 i androidx.activity:activity-ktx:1.10.0-alpha02 są udostępnione. Wersja 1.10.0-alpha02 zawiera te zmiany.
Zmiany w zachowaniu
- Kontrakty
PickVisualMediaiPickMultipleVisualMediaActivity Result, które wywołują selektor zdjęć, nie delegują już bezpośrednio do usług Google Play, jeśli selektor zdjęć w systemie jest niedostępny, ale używają publicznej czynnościACTION_SYSTEM_FALLBACK_PICK_IMAGESi powiązanych dodatków, aby zapewnić producentom OEM i aplikacjom systemowym spójne działanie selektora zdjęć jako rezerwy. Nie powinno to mieć wpływu na wygodę użytkowników urządzeń z najnowszą wersją Usług Google Play. (I3513d)
Poprawki błędów
- Usunęliśmy ręczne określanie dostępu do nowych interfejsów API platformy, ponieważ odbywa się to automatycznie za pomocą modelowania interfejsu API podczas korzystania z R8 z AGP 7.3 lub nowszą (np. R8 w wersji 3.3) oraz w przypadku wszystkich kompilacji podczas korzystania z AGP 8.1 lub nowszej (np. D8 w wersji 8.1). Klientom, którzy nie korzystają z wtyczki Androida do obsługi Gradle, zalecamy przejście na D8 w wersji 8.1 lub nowszej. Więcej szczegółów znajdziesz w tym artykule. (I9496c, b/345472586)
- W Activity
1.9.2: naprawiono problem polegający na tym, że interfejs Activity ComposePredictiveBackHandlerAPI nadal obsługiwał gest cofania systemu w ramce, w której został wyłączony, co mogło powodować, że biblioteki takie jak Navigation Compose obsługiwały cofanie nawet przy pustym stosie wstecznym, co powodowało zgłaszanie błęduIndexOutOfBoundsException. (Ie3301, b/340202286) - Z Aktywności
1.9.1: rozwiązaliśmy problem zPredictiveBackHandler, który powodował, że po cofnięciu zmian w systemie próba wykonaniaonBackPressedzOnBackPressedDispatcherkończyła się niepowodzeniem. (I5f1f8)
Wersja 1.10.0-alpha01
26 czerwca 2024 r.
androidx.activity:activity:1.10.0-alpha01, androidx.activity:activity-compose:1.10.0-alpha01 i androidx.activity:activity-ktx:1.10.0-alpha01 są udostępnione. Ta wersja jest opracowywana w gałęzi wewnętrznej.
Nowe funkcje
- Dodaliśmy obsługę nowych funkcji
PhotoPickerwprowadzonych w Androidzie V, w tym możliwość wybierania obrazów w określonej kolejności i wybierania, która karta (albumy czy obrazy) ma być początkowo widoczna.
Wersja 1.9
Wersja 1.9.3
16 października 2024 r.
androidx.activity:activity:1.9.3, androidx.activity:activity-compose:1.9.3 i androidx.activity:activity-ktx:1.9.3 są udostępnione. Wersja 1.9.3 zawiera te zatwierdzenia.
Poprawki błędów
PredictiveBackHandlernie będzie już wywoływać funkcji zwrotnej po wyłączeniu modułu obsługi. Rozwiąże to problem, w wyniku którego funkcjaNavHostz Navigation Compose zgłaszała błądIndexOutOfBoundsException. (I3f75e, b/340202286)
Wersja 1.9.2
4 września 2024 r.
androidx.activity:activity:1.9.2, androidx.activity:activity-compose:1.9.2 i androidx.activity:activity-ktx:1.9.2 są udostępnione. Wersja 1.9.2 zawiera te zmiany.
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że interfejs Activity Compose
PredictiveBackHandlerAPI nadal obsługiwał gest powrotu systemowego w ramce, w której został wyłączony. Mogło to powodować, że biblioteki takie jak Navigation Compose obsługiwały powrót nawet przy pustym stosie wstecznym, co powodowało zgłaszanie błęduIndexOutOfBoundsException. (Ie3301, b/340202286)
Wersja 1.9.1
24 lipca 2024 r.
androidx.activity:activity:1.9.1, androidx.activity:activity-compose:1.9.1 i androidx.activity:activity-ktx:1.9.1 są udostępnione. Wersja 1.9.1 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązaliśmy problem z
PredictiveBackHandler, który powodował, że po przywróceniu systemu próba wykonaniaonBackPressedzOnBackPressedDispatcherkończyła się niepowodzeniem. (I5f1f8)
Wersja 1.9.0
17 kwietnia 2024 r.
androidx.activity:activity:1.9.0, androidx.activity:activity-compose:1.9.0 i androidx.activity:activity-ktx:1.9.0 są udostępnione. Wersja 1.9.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.8.0
ComponentActivityimplementuje terazOnUserLeaveHintProvider, aby umożliwić komponentom wywoływanie zwrotne w przypadku zdarzeńonUserLeaveHint.- Interfejsy API
OnBackPressedCallback,BackHandleriPredictiveBackHandlerostrzegają teraz przed wywoływaniemonBackPressedDispatcher.onBackPressed()podczas obsługi przejścia wstecz, ponieważ zawsze przerywa to animację przewidywanego przejścia wstecz. Więcej informacji znajdziesz w przewodniku po sprawdzonych metodach. - Pozostałe interfejsy API aktywności zostały przepisane w Kotlinie, a wszystkie rozszerzenia dostępne wcześniej w
activity-ktxzostały przeniesione doactivity.activity-ktxjest teraz całkowicie pusta.- W ramach konwersji
ActivityResultLauncherna język Kotlin metodagetContractjest teraz abstrakcyjną właściwością w języku Kotlin. Jest to zmiana zgodna binarnie, ale powodująca niezgodność kodu źródłowego, jeśli implementacjaActivityResultLauncherjest napisana w Kotlinie.
- W ramach konwersji
Wersja 1.9.0-rc01
3 kwietnia 2024 r.
androidx.activity:activity:1.9.0-rc01, androidx.activity:activity-compose:1.9.0-rc01 i androidx.activity:activity-ktx:1.9.0-rc01 są udostępnione. Wersja 1.9.0-rc01 zawiera te zatwierdzenia.
Aktualizacja zależności
- Aktywność zależy teraz od instalatora profilu 1.3.1.
Wersja 1.9.0-beta01
20 marca 2024 r.
androidx.activity:activity:1.9.0-beta01, androidx.activity:activity-compose:1.9.0-beta01 i androidx.activity:activity-ktx:1.9.0-beta01 są udostępnione. Wersja 1.9.0-beta01 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiono regresję wydajności uruchamiania aktywności wprowadzoną w Activity
1.9.0-alpha02, która była spowodowana wywoływaniem funkcjiOnBackPressedDispatcherw ramach tworzenia aktywności. (Ie75e3)
Wersja 1.9.0-alpha03
7 lutego 2024 r.
androidx.activity:activity:1.9.0-alpha03, androidx.activity:activity-compose:1.9.0-alpha03 i androidx.activity:activity-ktx:1.9.0-alpha03 są udostępnione. Wersja 1.9.0-alpha03 zawiera te zatwierdzenia.
Ostrzeżenie lintera
- Interfejsy API
OnBackPressedCallback,BackHandleriPredictiveBackHandlerostrzegają teraz przed wywoływaniemonBackPressedDispatcher.onBackPressed()podczas obsługi przejścia wstecz, ponieważ zawsze przerywa to animację przewidywanego przejścia wstecz. Więcej informacji znajdziesz w przewodniku po sprawdzonych metodach. (1e4222, 2c950d, b/287505200)
Poprawki błędów
- Jeśli zdarzenie powrotu zostanie wysłane z systemu uruchomionego podczas już trwającego gestu przewidywanego przejścia wstecz, bieżący gest przewidywanego przejścia wstecz zostanie anulowany, a nowe zdarzenie powrotu przejmie kontrolę, aby rozpocząć nowy gest przewidywanego przejścia wstecz. (I3482e)
- Naprawiono błąd, który występował podczas pierwszego dostępu do
onBackPressedDispatcherzComponentActivityw wątku w tle. Teraz można bezpiecznie uzyskać dostęp doonBackPressedDispatcherw dowolnym wątku. (I79955)
Wersja 1.9.0-alpha02
24 stycznia 2024 r.
androidx.activity:activity:1.9.0-alpha02, androidx.activity:activity-compose:1.9.0-alpha02 i androidx.activity:activity-ktx:1.9.0-alpha02 są udostępnione. Wersja 1.9.0-alpha02 zawiera te zatwierdzenia.
Konwersje w Kotlinie
ActivityResultRegistryzostał przepisany w języku Kotlin. Dzięki temu wartość nullability typów ogólnych w kontrakcie przekazanym doregisterzostanie prawidłowo przekazana doActivityResultLauncherzwróconego do Ciebie. (I121f0)ActivityResultzostał przepisany w języku Kotlin.ActivityResultRozszerzenia języka Kotlin, które obsługują dekompozycję do pólresultCodeidata, zostały przeniesione zactivity-ktxdoactivity. (I0565a)- Rozszerzenia Kotlin
by viewModels()dlaComponentActivityitrackPipAnimationHintViewzostały przeniesione zactivity-ktxdoactivity. Artefaktactivity-ktxjest teraz całkowicie pusty. (I0a444)
Poprawki błędów
- Interfejs
enableEdgeToEdgeAPI rysuje teraz wokół wszystkich wycięć w ekranie. (a3644b, b/311173461) - W Aktywności
1.8.2: poprawiono dodatkowe dane przekazywane doACTION_SYSTEM_FALLBACK_PICK_IMAGESumowy dotyczącej aktywności selektora zdjęć, aby prawidłowo przekazywać je za pomocą kluczaEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, zamiast używać dodatkowych danych z kluczem"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". Jeśli jesteś producentem OEM, który wdraża systemowy selektor zdjęć z funkcją powrotu, zdecydowanie zalecamy obsługę obu dodatków, aby zapewnić jak największą kompatybilność. (I96a00)
Wersja 1.9.0-alpha01
29 listopada 2023 r.
androidx.activity:activity:1.9.0-alpha01, androidx.activity:activity-compose:1.9.0-alpha01 i androidx.activity:activity-ktx:1.9.0-alpha01 są udostępnione. Wersja 1.9.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
ComponentActivityimplementuje terazOnUserLeaveHintProvider, aby umożliwić komponentom wywoływanie zwrotne w przypadku zdarzeńonUserLeaveHint. (I54892)
Zmiany w interfejsie API
ComponentActivityzostał przepisany w języku Kotlin. (I14f31)ActivityResultCallerzostał przepisany w języku Kotlin. (Ib02e4)ActivityResultLauncherzostał przepisany w języku Kotlin. W ramach tej konwersjigetContractjest teraz abstrakcyjną właściwością w języku Kotlin. Jest to zmiana zgodna binarnie, ale powodująca błędy w kodzie źródłowym, jeśli implementacjaActivityResultLauncherjest napisana w Kotlinie. (Id4615)PickVisualMediaRequestma teraz taki sam minimalny poziom interfejsu API (19) jak kontraktPickVisualMediaActivity Result. (Id6e21)
Aktualizacja zależności
- Aktywność zależy teraz od Core
1.13.0-alpha01. (I14f31)
Wersja 1.8
Wersja 1.8.2
13 grudnia 2023 r.
androidx.activity:activity:1.8.2, androidx.activity:activity-compose:1.8.2 i androidx.activity:activity-ktx:1.8.2 są udostępnione. Wersja 1.8.2 zawiera te zatwierdzenia.
Poprawki błędów
- Poprawiono dodatkowe dane przekazywane do kontraktu aktywności selektora zdjęć
ACTION_SYSTEM_FALLBACK_PICK_IMAGES, aby prawidłowo przekazywać kluczEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, zamiast używać dodatkowych danych z kluczem"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". Jeśli jesteś producentem OEM, który wdraża systemowy selektor zdjęć z funkcją powrotu, zdecydowanie zalecamy obsługę obu dodatków, aby zapewnić jak największą kompatybilność. (I96a00)
Wersja 1.8.1
15 listopada 2023 r.
androidx.activity:activity:1.8.1, androidx.activity:activity-compose:1.8.1 i androidx.activity:activity-ktx:1.8.1 są udostępnione. Wersja 1.8.1 zawiera te zatwierdzenia.
Poprawki błędów
OnBackPressedDispatchernadal wysyła zdarzenia do właściwegoOnBackPressedCallbacknawet po dodaniu nowegoOnBackPressedCallbackpodczas obsługi gestu wstecz. (Id0ff6)
Wersja 1.8.0
4 października 2023 roku
androidx.activity:activity:1.8.0, androidx.activity:activity-compose:1.8.0 i androidx.activity:activity-ktx:1.8.0 są udostępnione. Wersja 1.8.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.7.0
- Przewidywane przejście wstecz –
OnBackPressedCallbackoferuje teraz nowe wywołania zwrotne przewidywanego przejścia wstecz, które obsługują rozpoczęcie gestu przejścia wstecz, jego postęp i anulowanie. Oprócz tego dostępne jest poprzednie wywołanie zwrotnehandleOnBackPressed(), które obsługuje wykonanie gestu przejścia wstecz. Zawiera teżPredictiveBackHandlerComposable, który obsługuje zdarzenia związane z gestem przewidywanego przejścia wstecz w Activity Compose. Zapewnia przepływ obiektów BackEventCompat, które muszą być zbierane w zawieszającej lambdzie podanej przez Ciebie:
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() został wycofany na rzecz interfejsów API do obsługi powrotu. Deweloperzy powinni teraz używać OnBackPressedDispatcher zamiast zastępować tę metodę.
- EdgeToEdge – dodano
ComponentActivity.enableEdgeToEdge(), aby w sposób zgodny wstecznie można było łatwo skonfigurować wyświetlacz od krawędzi do krawędzi.
Wersja 1.8.0-rc01
20 września 2023 r.
androidx.activity:activity:1.8.0-rc01, androidx.activity:activity-compose:1.8.0-rc01 i androidx.activity:activity-ktx:1.8.0-rc01 są udostępnione. Wersja 1.8.0-rc01 zawiera te zatwierdzenia.
Wersja 1.8.0-beta01
6 września 2023 r.
androidx.activity:activity:1.8.0-beta01, androidx.activity:activity-compose:1.8.0-beta01 i androidx.activity:activity-ktx:1.8.0-beta01 są udostępnione. Wersja 1.8.0-beta01 zawiera te zatwierdzenia.
Ulepszanie dokumentacji
- Ulepszyliśmy dokumentację
BackEventCompat. (aosp/2722254)
Wersja 1.8.0-alpha07
23 sierpnia 2023 r.
androidx.activity:activity:1.8.0-alpha07, androidx.activity:activity-compose:1.8.0-alpha07 i androidx.activity:activity-ktx:1.8.0-alpha07 są udostępnione. Wersja 1.8.0-alpha07 zawiera te zatwierdzenia.
Nowe funkcje
Biblioteka Activity Compose dodała nowy komponent
PredictiveBackHandler, który obsługuje zdarzenia gestu przewidywanego przejścia wstecz. ZawieraFlowobiektówBackEventCompat, które muszą zostać zebrane w dostarczonej przez Ciebie funkcji lambda zawieszającej: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 } }Zawiera też ostrzeżenie w czasie kompilacji za pomocą reguły lint, aby zapewnić, że wywołania
Flowsą zgodne zcollect(). (Id2773, b/294884345)Obiekt
onBackPressedDispatcherwComponentActivityjest teraz inicjowany z opóźnieniem, dzięki czemu jest tworzony tylko wtedy, gdy jest potrzebny. (I0bf8e)
Poprawki błędów
ComponentActivitynie będzie już wyświetlać błędu NPE na Androidzie 13, gdy otrzyma wywołanie zwrotneonBackPressed(), a aktywność została jużDESTROYED. (Idb055, b/291869278)- Usunięto użycie eksperymentalnego interfejsu API
isAtLeastU()(Ie9117, b/289269026)
Wersja 1.8.0-alpha06
21 czerwca 2023 r.
androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06 i androidx.activity:activity-ktx:1.8.0-alpha06 są udostępnione. Wersja 1.8.0-alpha06 zawiera te zatwierdzenia.
Nowe funkcje
OnBackPressedDispatcherteraz prawidłowo anuluje wszystkie wywołania zwrotne, które zostaną usunięte podczas gestu przewidywanego przejścia wstecz. (I3f90f)
Zmiany w interfejsie API
- Podczas przekazywania wartości
SystemBarStyle.autodo interfejsuenableEdgeToEdgeAPI możesz teraz zastąpić parametr lambdadetectDarkMode, aby podać niestandardową logikę wykrywania trybu nocnego. (aosp/2546393, b/278263793)
Wersja 1.8.0-alpha05
7 czerwca 2023 r.
androidx.activity:activity:1.8.0-alpha05, androidx.activity:activity-compose:1.8.0-alpha05 i androidx.activity:activity-ktx:1.8.0-alpha05 są udostępnione. Ta wersja jest opracowywana w gałęzi wewnętrznej.
Zmiany w interfejsie API
- Klasa Activity udostępnia teraz klasę
BackEventCompat, która jest zgodną wstecznie wersją klasyBackEventi jest od niej odłączona.BackEvent - Zmiana powodująca niezgodność: metody
handleOnBackStartedihandleOnBackProgressedw klasieOnBackPressedCallbackotrzymują teraz instancjęandroidx.activity.BackEventCompatzamiast klasyandroid.window.BackEventplatformy. Zaktualizowaliśmy też odpowiednie interfejsy API@VisibleForTestingnaOnBackPressedDispatcher. - Konstruktor
OnBackPressedDispatcherprzyjmuje teraz opcjonalną instancjęConsumer<Boolean>, która umożliwia właścicielom dyspozytora otrzymywanie wywołania zwrotnego, gdy liczba włączonych wywołań zwrotnych zmienia się z zera na wartość różną od zera lub odwrotnie.
Poprawki błędów
- W sekcji Aktywność
1.7.2: naprawiono błądReportDrawnpowodujący awarię podczas opuszczania ekranu przed wywołaniem funkcjireport. (Ic46f1, b/260506820)
Wersja 1.8.0-alpha04
10 maja 2023 r.
androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04 i androidx.activity:activity-ktx:1.8.0-alpha04 są udostępnione. Została ona udostępniona z wewnętrznej gałęzi.
Poprawki błędów
- Od wersji Activity 1.7.1: –
ReportFullyDrawExecuternie wycieka już podczas korzystania zComponentActivityzActivityScenario. (Id2ff2, b/277434271)
Wersja 1.8.0-alpha03
12 kwietnia 2023 r.
androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03 i androidx.activity:activity-ktx:1.8.0-alpha03 są udostępnione. Została ona udostępniona z wewnętrznej gałęzi.
Nowe funkcje
- Dodano
ComponentActivity.setUpEdgeToEdge(), aby łatwo skonfigurować wyświetlacz od krawędzi do krawędzi w sposób zgodny wstecznie.
Zmiany w interfejsie API
ComponentActivity.onBackPressed()został wycofany na rzecz interfejsów API do obsługi powrotu. Deweloperzy powinni teraz używaćOnBackPressedDispatcherzamiast zastępować tę metodę. (Ibce2f, b/271596918)ComponentDialogiComponentActivityzawierają teraz publiczny interfejs APIinitViewTreeOwners(), który służy do inicjowania wszystkich właścicieli drzewa widoku przed ustawieniem widoku treści. (Ibdce0, b/261314581)
Poprawki błędów
- Rozwiązaliśmy problem, który powodował nieprawidłowe unieważnianie elementów MenuHost przez fragmenty i nieoczekiwane działanie innych menu w aktywności. (I9404e, b/244336571)
Inne zmiany
ActivityResultRegisterużywa teraz języka KotlinRandomzamiast Javy. (I4d98f, b/272096025)
Wersja 1.8.0-alpha02
8 marca 2023 r.
androidx.activity:activity:1.8.0-alpha02, androidx.activity:activity-compose:1.8.0-alpha02 i androidx.activity:activity-ktx:1.8.0-alpha02 są udostępnione. Opracowano na podstawie wewnętrznej gałęzi.
Aktualizacja zależności
- Aktywność
1.7.0-rc01: aktywność zależy teraz odLifecycle 2.6.0.
Wersja 1.8.0-alpha01
8 lutego 2023 r.
androidx.activity:activity:1.8.0-alpha01, androidx.activity:activity-compose:1.8.0-alpha01 i androidx.activity:activity-ktx:1.8.0-alpha01 są udostępnione. Została ona utworzona na podstawie gałęzi wewnętrznej.
Nowe funkcje
- Klasa
OnBackPressedCallbackzawiera teraz nowe wywołania zwrotne postępu przewidywanego przejścia wstecz, które obsługują rozpoczęcie gestu przejścia wstecz, jego postęp i jego anulowanie. Oprócz tego zawiera poprzednie wywołanie zwrotnehandleOnBackPressed(), które jest wywoływane, gdy gest przejścia wstecz zostanie zatwierdzony.
Wersja 1.7
Wersja 1.7.2
24 maja 2023 r.
androidx.activity:activity:1.7.2, androidx.activity:activity-compose:1.7.2 i androidx.activity:activity-ktx:1.7.2 są udostępnione. Wersja 1.7.2 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiono błąd powodujący awarię
ReportDrawnpodczas opuszczania ekranu przed wywołaniemreport. (Ic46f1, b/260506820)
Wersja 1.7.1
19 kwietnia 2023 r.
androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1 i androidx.activity:activity-ktx:1.7.1 są udostępnione. Wersja 1.7.1 zawiera te zatwierdzenia.
Poprawki błędów
- W przypadku korzystania z
ComponentActivityw połączeniu zActivityScenarionie dochodzi już do wyciekuReportFullyDrawExecuter. (Id2ff2, b/277434271)
Wersja 1.7.0
22 marca 2023 r.
androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0 i androidx.activity:activity-ktx:1.7.0 są udostępnione. Wersja 1.7.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.6.0
- Kontrakty aktywności selektora zdjęć w
PickVisualMediaiPickMultipleVisualMediazostały zaktualizowane, aby zawierały dodatkowe rozwiązanie awaryjne na wypadek niedostępnościMediaStore.ACTION_PICK_IMAGES. Umożliwia ono producentom OEM i aplikacjom systemowym, takim jak usługi Google Play, zapewnienie spójnego działania selektora zdjęć na szerszej gamie urządzeń z Androidem i poziomów interfejsu API przez wdrożenie działania awaryjnego. Selektor zdjęć użyje tego rozwiązania, jeśli będzie ono dostępne, zanim przejdzie doIntent.ACTION_OPEN_DOCUMENT, które nadal obsługuje wszystkie urządzenia z interfejsem API 19 i nowszym. ComponentDialogwdraża terazSavedStateRegistryOwneri ma dostęp do własnegoSavedStateRegistryoraz ustawiaSavedStateRegistryOwnerdla swojegoViewTree. Teraz można używać Jetpack Compose wComponentDialog, ponieważ spełnia on wymaganiaLifecycleOwneriSavedStateRegistryOwnerdołączone do okna za pomocą interfejsów APIViewTree.IntentSenderRequest.Builder.setFlags()umożliwia teraz ustawianie wielu flag zIntent, a nie tylko jednej.
Konwersja na język Kotlin
Wiele klas aktywności zostało przekonwertowanych na język Kotlin. Wszystkie przekonwertowane klasy zachowują kompatybilność binarną z poprzednimi wersjami. W przypadku klas napisanych w Kotlinie te klasy mają niezgodne zmiany w kodzie źródłowym: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.
W tabeli poniżej znajdziesz konwersje źródłowe dla nowej wersji aktywności:
| Aktywność 1.5 | Aktywność 1.6 |
|---|---|
override fun getActivityResultRegistry() = activityResultRegistry |
override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher |
override val onBackPressedDispatcher = onBackPressedDispatcher |
Te klasy zostały również przekonwertowane na język Kotlin, ale zachowują zgodność ze źródłem: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest i OnBackPressedDispatcher.
Interfejsy FullyDrawnReporter API
ComponentActivity udostępnia teraz instancję FullyDrawnReporter, która umożliwia zgłaszanie przez wiele komponentów gotowości do interakcji. ComponentActivity poczeka na zakończenie wszystkich komponentów, zanim w Twoim imieniu wywoła reportFullyDrawn(). Te interfejsy API spełniają wymagania dotyczące czasu i nie muszą być wywoływane w ramach wywołania onDraw.
Zalecamy włączenie tych interfejsów API:
- Sygnalizowanie środowisku wykonawczemu Androida zakończenia uruchamiania, aby mieć pewność, że cały kod uruchamiany podczas wieloklatkowej sekwencji uruchamiania jest uwzględniany i traktowany priorytetowo w kompilacji w tle.
- Sygnalizowanie testu porównawczego Macrobenchmark i danych Play Vitals, kiedy aplikacja powinna być uznawana za w pełni wyrenderowaną na potrzeby statystyk uruchamiania, aby można było śledzić wydajność.
Dodaliśmy 3 interfejsy Activity Compose API, aby ułatwić korzystanie z FullyDrawnReporter w poszczególnych komponentach:
ReportDrawnoznacza, że komponent jest od razu gotowy do interakcji.ReportDrawnWhenprzyjmuje predykat (czylilist.count > 0), aby wskazać, kiedy komponent jest gotowy do interakcji.ReportDrawnAfterprzyjmuje metodę zawieszającą, która po zakończeniu wskazuje, że jesteś gotowy(-a) do interakcji.
Aktualizacje zależności
- Aktywność zależy teraz od cyklu życia
2.6.1. (8fc31d) - Aktywność zależy teraz od ProfileInstaller
1.3.0. (83d3b1)
Wersja 1.7.0-rc01
8 marca 2023 r.
androidx.activity:activity:1.7.0-rc01, androidx.activity:activity-compose:1.7.0-rc01 i androidx.activity:activity-ktx:1.7.0-rc01 są udostępnione. Wersja 1.7.0-rc01 zawiera te zatwierdzenia.
Aktualizacja zależności
- Aktywność zależy teraz od
Lifecycle 2.6.0.
Wersja 1.7.0-beta02
22 lutego 2023 roku
androidx.activity:activity:1.7.0-beta02, androidx.activity:activity-compose:1.7.0-beta02 i androidx.activity:activity-ktx:1.7.0-beta02 są udostępnione. Wersja 1.7.0-beta02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Działanie i dodatkowe elementy używane przez kontrakty
PickVisualMediaiPickMultipleVisualMediajako rezerwa, gdyMediaStore.ACTION_PICK_IMAGESjest niedostępny, są teraz publicznymi stałymi, które zapewniają stabilność interfejsu API producentom OEM i aplikacjom systemowym, które chcą zapewnić spójne działanie selektora zdjęć. Implementacja tego rozwiązania rezerwowego jest nadal ograniczona tylko do aplikacji systemowych. (Icd320)
Wersja 1.7.0-beta01
8 lutego 2023 r.
androidx.activity:activity:1.7.0-beta01, androidx.activity:activity-compose:1.7.0-beta01 i androidx.activity:activity-ktx:1.7.0-beta01 są udostępnione. Wersja 1.7.0-beta01 zawiera te zatwierdzenia.
Nowe funkcje
IntentSenderRequest.Builder.setFlags()umożliwia teraz ustawianie wielu flag zIntent, a nie tylko jednej. (Iac04c)
Poprawki błędów
- W przypadku
PickVisualMedia, gdy selektor zdjęć jest niedostępny, mechanizm rezerwowy prawidłowo ogranicza obsługę do aplikacji zainstalowanych w obrazie systemu urządzenia. (If8ae6)
Konwersje w Kotlinie
ActivityResultRegistryOwnerjest teraz napisany w języku Kotlin. Jest to zmiana powodująca niezgodność w przypadku klas napisanych w Kotlinie – teraz musisz zastąpić właściwośćactivityResultRegistry, a nie implementować poprzedniej funkcjigetActivityResultRegistry(). (I0b00e)OnBackPressedDispatcherOwnerjest teraz napisany w języku Kotlin. Jest to zmiana powodująca niezgodność w przypadku klas napisanych w Kotlinie – teraz musisz zastąpić właściwośćonBackPressedDispatcher, a nie implementować poprzedniej funkcjigetOnBackPressedDispatcher. (Ia277d)ContextAware,ContextAwareHelper,OnContextAvailableListener,IntentSenderRequestiOnBackPressedDispatchersą teraz napisane w języku Kotlin. (I1a73e, Iada92, aosp/2410754, I18ac7, b/257291701)
Wersja 1.7.0-alpha04
25 stycznia 2023 r.
androidx.activity:activity:1.7.0-alpha04, androidx.activity:activity-compose:1.7.0-alpha04 i androidx.activity:activity-ktx:1.7.0-alpha04 są udostępnione. Wersja 1.7.0-alpha04 zawiera te zatwierdzenia.
Nowe funkcje
- Kontrakty
PickVisualMediaiPickMultipleVisualMediaActivity Result będą teraz korzystać z selektora zdjęć udostępnianego przez usługi Google Play, jeśli jest on dostępny w przypadkach, gdy selektor zdjęć udostępniany przez system Android (np.MediaStore.ACTION_PICK_IMAGES) nie jest dostępny. InterfejsisPhotoPickerAvailable()API, który wykrywa tylko selektor zdjęć udostępniany przez system Android, został wycofany. Zalecamy używanie nowego interfejsuisPhotoPickerAvailable(Context)API, który zwraca informację o dostępności selektora zdjęć. (I55be6)
Wersja 1.7.0-alpha03
11 stycznia 2023 r.
androidx.activity:activity:1.7.0-alpha03, androidx.activity:activity-compose:1.7.0-alpha03 i androidx.activity:activity-ktx:1.7.0-alpha03 są udostępnione. Wersja 1.7.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
ComponentDialogimplementuje terazSavedStateRegistryOwneri ma dostęp do własnegoSavedStateRegistryoraz ustawiaSavedStateRegistryOwnerdla swojego ViewTree. Teraz możesz używać Jetpack Compose wComponentDialog, ponieważ spełnia on wymaganiaLifecycleOwneriSavedStateRegistryOwnerdołączone do okna za pomocą interfejsów ViewTree API. (Idca17, I73468 b/261162296)
Zmiany w interfejsie API
- Dodano funkcję kompozycyjną
ReportDrawn, która natychmiast oznacza aktywność jako gotową do wywołaniareportFullyDrawn. (Ic5b14, b/259687964)
Konwersje w Kotlinie
- Klasy
ActvitiyResultCallbackiOnBackPressedCallbackzostały przekonwertowane na język Kotlin przy zachowaniu zgodności kodu źródłowego i binarnej. (Ifc5e5, Ide1b0, b/257291701)
Wersja 1.7.0-alpha02
24 października 2022 r.
androidx.activity:activity:1.7.0-alpha02, androidx.activity:activity-compose:1.7.0-alpha02 i androidx.activity:activity-ktx:1.7.0-alpha02 są udostępnione. Wersja 1.7.0-alpha02 zawiera te zatwierdzenia.
Poprawki błędów
- W sekcji Aktywność
1.6.1: rozwiązaliśmy problem z nieuruchamianiem kontraktuPickMultipleVisualMediaActivity Result na urządzeniach z Androidem R, gdy używana była wartość domyślna parametrumaxItems. (Ie2776, b/249182130)
Wersja 1.7.0-alpha01
5 października 2022 r.
androidx.activity:activity:1.7.0-alpha01, androidx.activity:activity-compose:1.7.0-alpha01 i androidx.activity:activity-ktx:1.7.0-alpha01 są udostępnione. Wersja 1.7.0-alpha01 zawiera te zatwierdzenia.
Interfejsy FullyDrawnReporter API
ComponentActivity udostępnia teraz instancję FullyDrawnReporter, która umożliwia zgłaszanie przez wiele komponentów gotowości do interakcji. ComponentActivity poczeka na zakończenie wszystkich komponentów, zanim w Twoim imieniu wywoła reportFullyDrawn(). Te interfejsy API spełniają wymagania dotyczące czasu i nie muszą być wywoływane w ramach wywołania onDraw.
Zalecamy włączenie tych interfejsów API:
- Sygnalizowanie środowisku wykonawczemu Androida zakończenia uruchamiania, aby mieć pewność, że cały kod uruchamiany podczas wieloklatkowej sekwencji uruchamiania jest uwzględniany i traktowany priorytetowo w kompilacji w tle.
- Sygnalizowanie makrobenchmarku i danych Play Vitals, gdy aplikacja powinna być uznawana za w pełni wyrenderowaną na potrzeby pomiarów dotyczących uruchamiania, aby można było śledzić wydajność.
Dodaliśmy 2 interfejsy Activity Compose API, aby ułatwić korzystanie z FullyDrawnReporter z pojedynczych komponentów:
ReportDrawnWhenprzyjmuje predykat (czylilist.count > 0), aby wskazać, kiedy komponent jest gotowy do interakcji.ReportDrawnAfterprzyjmuje metodę zawieszającą, która po zakończeniu wskazuje, że jesteś gotowy(-a) do interakcji.
Wersja 1.6.1
Wersja 1.6.1
24 października 2022 r.
androidx.activity:activity:1.6.1, androidx.activity:activity-compose:1.6.1 i androidx.activity:activity-ktx:1.6.1 są udostępnione. Wersja 1.6.1 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązaliśmy problem z kontraktem
PickMultipleVisualMediaActivity Result, który nie uruchamiał się na urządzeniach z Androidem R, gdy używana była wartość domyślna parametrumaxItems. (Ie2776, b/249182130)
Wersja 1.6.0
Wersja 1.6.0
21 września 2022 r.
androidx.activity:activity:1.6.0, androidx.activity:activity-compose:1.6.0 i androidx.activity:activity-ktx:1.6.0 są udostępnione. Wersja 1.6.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.5.0
- Dodano
ActivityResultContracts.PickVisualMediaiActivityResultContracts.PickMultipleVisualMedia, aby zapewnić umowę zgodną wstecznie, która używaMediaStore.ACTION_PICK_IMAGES, gdy dostępny jest selektor zdjęć, orazIntent.ACTION_OPEN_DOCUMENT, gdy nie jest on dostępny. - Zintegrowano
OnBackInvokedCallbackw Androidzie 13 zOnBackPressedDispatchersudostępnianym przezComponentActivityiComponentDialog. Dzięki temu wszystkie interfejsy API oparte naOnBackPressedDispatcherbędą działać po włączeniu gestu przewidywanego przejścia wstecz.
Wersja 1.6.0-rc02
7 września 2022 roku
androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02 i androidx.activity:activity-ktx:1.6.0-rc02 są udostępnione. Wersja 1.6.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
OnBackPressedDispatcherrejestruje terazOnBackInvokedCallbackwPRIORITY_DEFAULTzamiast wPRIORITY_OVERLAY. (I3901f)- Klasy, które rozszerzają klasę
ComponentActivity, będą teraz zawsze wywoływać oba wywołania zwrotneonMultiWindowModeChanged(). (Ic4d85) ActivityResultRegistrynie będzie już zwracać wyniku doActivityResultCallback, gdy wywołanielaunchzgłosi błądException, a funkcja zwrotna została zarejestrowana bezLifecycleOwner. (Ia7ff7, b/238350794)ComponentActivitybędzie teraz prawidłowo wysyłać wywołania menu bez konieczności wywoływania funkcji nadrzędnej w aktywności. (Ie33c5, b/238057118)
Aktualizacja zależności
- Biblioteka
Activityjest teraz zależna od Lifecycle2.5.1. (If6697)
Wersja 1.6.0-rc01
24 sierpnia 2022 r.
androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01 i androidx.activity:activity-ktx:1.6.0-rc01 są udostępnione. Wersja 1.6.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Inicjowanie
OnBackPressedDispatchernie będzie już powodowaćClassVerificationErrorw przypadku używania wersji pakietu SDK starszych niż 33. (Ic32e1) - W przypadku klas, które zastępują wywołanie zwrotne
ComponentActivityonPictureInPictureModeChanged(), wywołania zwrotne będą teraz zawsze wysyłane. (Ib7fdb)
Wersja 1.6.0-beta01
10 sierpnia 2022 r.
androidx.activity:activity:1.6.0-beta01, androidx.activity:activity-compose:1.6.0-beta01 i androidx.activity:activity-ktx:1.6.0-beta01 są udostępnione. Wersja 1.6.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Oznaczyliśmy wycofane metody
startActivityForResultistartIntentSenderForResultwComponentActivitysymbolem@NonNull, ponieważ przekazywanie wartościnullzawsze powodowało awarię. (Id2a25, b/231476082)
Poprawki błędów
- Z Activity
1.5.1:ActivityResultRegistrynie będzie już zwracać wyniku doActivityResultCallback, gdy wywołanielaunchzgłosi błądException, a funkcja zwrotna została zarejestrowana bezLifecycleOwner. (Ia7ff7, b/238350794) - W przypadku aktywności
1.5.1:ComponentActivitybędzie teraz prawidłowo przekazywać wywołania menu do zastąpieńonPrepareOptionMenu(),onCreateOptionsMenu()ionOptionsItemSelected()bez konieczności wywoływania funkcji nadrzędnej. (Ie33c5, b/238057118)
Aktualizacja zależności
- W sekcji Aktywność
1.5.1: bibliotekaActivityzależy teraz odLifecyclewersji2.5.1. (If6697)
Wersja 1.6.0-alpha05
15 czerwca 2022 r.
androidx.activity:activity:1.6.0-alpha05, androidx.activity:activity-compose:1.6.0-alpha05 i androidx.activity:activity-ktx:1.6.0-alpha05 są udostępnione. Wersja 1.6.0-alpha05 została opracowana w prywatnej gałęzi przedpremierowej i nie ma publicznych commitów.
Zmiany w interfejsie API
minCompileSdk– teraz 33, aby była zgodna z pakietem SDK Tiramisu Beta 3
Poprawki błędów
- Naprawiono awarię na starszych urządzeniach podczas sprawdzania rozszerzenia pakietu SDK dla
PickVisualMediaActivityResultContract, dzięki czemu powinno ono teraz działać zACTION_OPEN_DOCUMENTna urządzeniach z Androidem 10 i starszym.
Wersja 1.6.0-alpha04
18 maja 2022 r.
Publikacja androidx.activity:activity:1.6.0-alpha04 i androidx.activity:activity-ktx:1.6.0-alpha04
Poprawki błędów
- Naprawiono błąd w
PickVisualMediaRequest, w którym próba utworzenia żądania za pomocą narzędzia do tworzenia lub funkcji Kotlin najwyższego poziomu powodowała przepełnienie stosu. - Zintegrowano
OnBackInvokedCallbackw Androidzie 13 w wersji beta dla deweloperów 2 zOnBackPressedDispatcherdostarczonym przezComponentDialog. Dzięki temu wszystkie interfejsy API oparte naOnBackPressedDispatcherbędą działać po włączeniu gestu przewidywanego przejścia wstecz.
Wersja 1.6.0-alpha03
27 kwietnia 2022 r.
androidx.activity:activity:1.6.0-alpha03, androidx.activity:activity-compose:1.6.0-alpha03 i androidx.activity:activity-ktx:1.6.0-alpha03 są udostępnione.
- Uwaga: ta wersja będzie kompilowana tylko z pakietem SDK Androida 13 w wersji beta 1 dla deweloperów.
Nowe funkcje
- Dodano
ActivityResultContracts.PickVisualMediaiActivityResultContracts.PickMultipleVisualMedia, aby zapewnić umowę zgodną wstecznie, która używaMediaStore.ACTION_PICK_IMAGES, gdy dostępny jest selektor zdjęć, orazIntent.ACTION_OPEN_DOCUMENT, gdy nie jest on dostępny. - Zintegrowaliśmy
OnBackInvokedCallbackw Androidzie 13 w wersji beta 1 dla deweloperów zOnBackPressedDispatcherdostarczonym przezComponentActivity. Dzięki temu wszystkie interfejsy API oparte naOnBackPressedDispatcherbędą działać po włączeniu gestu przewidywanego przejścia wstecz.
Wersja 1.6.0-alpha01
23 marca 2022 r.
androidx.activity:activity:1.6.0-alpha01, androidx.activity:activity-compose:1.6.0-alpha01 i androidx.activity:activity-ktx:1.6.0-alpha01 są udostępnione.
- Uwaga: ta wersja będzie kompilowana tylko w oparciu o pakiet SDK wersji przedpremierowej 2 Androida 13.
Nowe funkcje
- Zintegrowano zmiany z wersji Androida 13 w wersji deweloperskiej 2 z
ComponentActivity.
Wersja 1.5.1
Wersja 1.5.1
27 lipca 2022 roku
androidx.activity:activity:1.5.1, androidx.activity:activity-compose:1.5.1 i androidx.activity:activity-ktx:1.5.1 są udostępnione. Wersja 1.5.1 zawiera te zatwierdzenia.
Poprawki błędów
ActivityResultRegistrynie będzie już zwracać wyniku doActivityResultCallback, gdy wywołanielaunch()zgłosi błądException, a wywołanie zwrotne zostało zarejestrowane bezLifecycleOwner. (Ia7ff7, b/238350794)ComponentActivitybędzie teraz prawidłowo przekazywać wywołania menu do zastąpieńonPrepareOptionMenu(),onCreateOptionsMenu()ionOptionsItemSelected()bez konieczności wywoływania funkcji super. (Ie33c5, b/238057118)
Aktualizacja zależności
- Biblioteka
Activityzależy teraz od Lifecycle2.5.1. (If6697)
Wersja 1.5.0
Wersja 1.5.0
29 czerwca 2022 r.
androidx.activity:activity:1.5.0, androidx.activity:activity-compose:1.5.0 i androidx.activity:activity-ktx:1.5.0 są udostępnione. Wersja 1.5.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.4.0
- ComponentDialog –
ComponentDialogto podklasaDialog, która zawieraOnBackPressedDispatcherwywoływany po naciśnięciu systemowego przycisku Wstecz, gdy okno dialogowe jest widoczne. Co ważne, ta podklasa ustawia teżViewTreeOnBackPressedDispatcherOwner, dzięki czemu widoki mogą w ogólny sposób pobierać odpowiedni dyspozytor, niezależnie od tego, czy znajduje się on wComponentActivityczy wComponentDialog. - Interfejsy wywołań zwrotnych –
ComponentActivityimplementuje teraz zestaw modułowych interfejsów wywołań zwrotnych, których można używać zamiast wywołań zwrotnychActivity. Te interfejsy obejmują:OnNewIntentProvider,OnConfigurationChangedProvider,OnTrimMemoryProvider,OnPictureInPictureModeChangedProvider,OnMultiWindowModeChangedProvider - Integracja CreationExtras –
ComponentActivitymoże teraz udostępniać bezstanowyViewModelProvider.Factoryza pomocą cyklu życia2.5.0CreationExtras.
Inne zmiany
- Konstruktor bez parametrów dla
ActivityResultContracts.CreateDocumentzostał wycofany i zastąpiony nowym konstruktorem, który przyjmuje konkretny typ MIME (np. „image/png”), zgodnie z wymaganiamiIntent.ACTION_CREATE_DOCUMENT.
Wersja 1.5.0-rc01
11 maja 2022 roku
androidx.activity:activity:1.5.0-rc01, androidx.activity:activity-compose:1.5.0-rc01 i androidx.activity:activity-ktx:1.5.0-rc01 zostały opublikowane bez zmian w porównaniu z wersją 1.5.0-beta01. Wersja 1.5.0-rc01 zawiera te zatwierdzenia.
Wersja 1.5.0-beta01
20 kwietnia 2022 r.
androidx.activity:activity:1.5.0-beta01, androidx.activity:activity-compose:1.5.0-beta01 i androidx.activity:activity-ktx:1.5.0-beta01 są udostępnione. Wersja 1.5.0-beta01 zawiera te zatwierdzenia.
Aktualizacje zależności
- Aktywność zależy teraz od cyklu życia
2.4.0-beta01.
Wersja 1.5.0-alpha05
6 kwietnia 2022 roku
androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05 i androidx.activity:activity-ktx:1.5.0-alpha05 są udostępnione. Wersja 1.5.0-alpha05 zawiera te zatwierdzenia.
Poprawki błędów
ComponentActivityonPanelClosed()wywołuje teraz również superklasęonPanelClosed(), co rozwiązuje problem polegający na tym, że metodaonContextMenuClosednie była wywoływana. (Ib6f77)
Wersja 1.5.0-alpha04
23 marca 2022 r.
androidx.activity:activity:1.5.0-alpha04, androidx.activity:activity-compose:1.5.0-alpha04 i androidx.activity:activity-ktx:1.5.0-alpha04 są udostępnione. Wersja 1.5.0-alpha04 zawiera te zatwierdzenia.
Poprawki błędów
SavedStateViewFactoryobsługuje teraz używanieCreationExtrasnawet wtedy, gdy zostało zainicjowane za pomocąSavedStateRegistryOwner. Jeśli podano dodatkowe informacje, zainicjowane argumenty są ignorowane. (I6c43b, b/224844583)
Wersja 1.5.0-alpha03
23 lutego 2022 r.
androidx.activity:activity:1.5.0-alpha03, androidx.activity:activity-compose:1.5.0-alpha03 i androidx.activity:activity-ktx:1.5.0-alpha03 są udostępnione. Wersja 1.5.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Możesz teraz przekazywać
CreationExtrasdo funkcji działaniaby viewModels()(I6a3e6, b/217600303).
Wersja 1.5.0-alpha02
9 lutego 2022 r.
androidx.activity:activity:1.5.0-alpha02, androidx.activity:activity-compose:1.5.0-alpha02 i androidx.activity:activity-ktx:1.5.0-alpha02 są udostępnione. Wersja 1.5.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
ComponentActivityimplementuje teraz interfejsOnPictureInPictureModeChangedProvider, aby umożliwić dowolnemu komponentowi odbieranie zdarzeń zmiany trybu obrazu w obrazie. (I9f567)ComponentActivityimplementuje teraz interfejsOnMultiWindowModeChangedProvider, aby umożliwić odbieranie zdarzeń zmiany trybu wielu okien przez dowolny komponent. (I62d91)
Wersja 1.5.0-alpha01
26 stycznia 2022 r.
androidx.activity:activity:1.5.0-alpha01, androidx.activity:activity-compose:1.5.0-alpha01 i androidx.activity:activity-ktx:1.5.0-alpha01 są udostępnione. Wersja 1.5.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
ComponentActivityjest teraz zintegrowany z obiektem ViewModel CreationExtras, który został wprowadzony w ramach Lifecycle2.5.0-alpha01. (Ie7e00, b/207012584)- Dodano
ComponentDialog, podklasęDialog, która zawieraOnBackPressedDispatcher, który zostanie wywołany, gdy użytkownik naciśnie przycisk Wstecz w systemie, gdy okno dialogowe jest widoczne. Co ważne, ta podklasa ustawia teżViewTreeOnBackPressedDispatcherOwner, co umożliwia widokom ogólny sposób pobierania odpowiedniego dyspozytora, niezależnie od tego, czy znajduje się on wComponentActivity, czy wComponentDialog. (I8a1bc) ComponentActivityimplementuje teraz nowy interfejsOnNewIntentProvider, który umożliwia odbieranie tych zdarzeń przez dowolny komponent. (If1f8b)ComponentActivityimplementuje teraz nowy interfejsOnConfigurationChangedProvider, aby umożliwić odbieranie tych zdarzeń przez dowolny komponent. (If623b)ComponentActivityimplementuje teraz nowy interfejsOnTrimMemoryProvider, aby umożliwić odbieranie tych zdarzeń przez dowolny komponent. (Ia9295)
Zmiany w interfejsie API
- Konstruktor bez parametrów dla
ActivityResultContracts.CreateDocumentzostał wycofany i zastąpiony nowym konstruktorem, który przyjmuje konkretny typ MIME (np."image/png"), zgodnie z wymaganiamiIntent.ACTION_CREATE_DOCUMENT. (I2bec6) OnBackPressedDispatcherOwnerpowiązany z widokiem można teraz pobrać za pomocąViewTreeOnBackPressedDispatcherOwner, zamiast polegać na rzutowaniuContext. (I74685)
Poprawki błędów
- Naprawiono błąd powodujący awarię podczas pierwszego dostępu do
ViewModelz wywołania zwrotnegoregisterForActivityResult()lub wywołań zwrotnych doLifecycleObserverdodanych w ramachinitComponentActivity. (Ife83f)
Wersja 1.4.0
Wersja 1.4.0
27 października 2021 r.
androidx.activity:activity:1.4.0, androidx.activity:activity-compose:1.4.0 i androidx.activity:activity-ktx:1.4.0 są udostępnione. Wersja 1.4.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.3.0
- AndroidX
ComponentActivityimplementuje teraz interfejsMenuHost. Dzięki temu każdy komponent może dodawać elementy menu doActionBar, dodając do aktywności instancjęMenuProvider. Każdy elementMenuProvidermożna opcjonalnie dodać za pomocą elementuLifecycle, który będzie automatycznie kontrolować widoczność tych pozycji menu na podstawie stanu elementuLifecyclei obsługiwać usuwanie elementuMenuProviderpo zniszczeniu elementuLifecycle. - Klasa
ActivityResultContractzostała przepisana w języku Kotlin, aby deweloperzy piszący niestandardowe umowy w tym języku mogli określać prawidłową wartość null dla klas wejściowych i wyjściowych. - Klasa
ActivityResultContractsi jej kontrakty zostały przepisane w języku Kotlin, aby zapewnić odpowiednią możliwość wartości null.
Wersja 1.4.0-rc01
13 października 2021 r.
androidx.activity:activity:1.4.0-rc01, androidx.activity:activity-compose:1.4.0-rc01 i androidx.activity:activity-ktx:1.4.0-rc01 są udostępnione. Wersja 1.4.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
ActivityResultRegistrynie będzie już zwracać wyniku doActivityResultCallback, gdy wywołanielaunchspowoduje błądException. (If4f91, b/200845664)
Wersja 1.4.0-beta01
29 września 2021 r.
androidx.activity:activity:1.4.0-beta01, androidx.activity:activity-compose:1.4.0-beta01 i androidx.activity:activity-ktx:1.4.0-beta01 są udostępnione. Wersja 1.4.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Poprawiono typy dla
ActivityResultContracts.OpenMultipleDocumentsiActivityResultContracts.GetMultipleContents, które powodowały, że podczas korzystania z kodu w języku programowania Java używały typu wyjściowegoList<? extends Uri>. (If71de) - Stałe publiczne w klasach
ActivityResultContracts.StartActivityForResult,ActivityResultContracts.StartIntentSenderForResultiActivityResultContracts.RequestMultiplePermissionssą teraz dostępne podczas korzystania z języka Kotlin za pomocą ich publicznych obiektówCompanion. (aosp/1832555)
Aktualizacje dokumentacji
- Komunikaty o wycofaniu interfejsów API, które są teraz obsługiwane przez interfejsy API wyników aktywności, czyli
startActivityForResult,startIntentSenderForResult,onActivityResult,requestPermissionsionRequestPermissionsResult, zostały rozszerzone o dodatkowe szczegóły. (cce80f)
Wersja 1.4.0-alpha02
15 września 2021 r.
androidx.activity:activity:1.4.0-alpha02, androidx.activity:activity-compose:1.4.0-alpha02 i androidx.activity:activity-ktx:1.4.0-alpha02 są udostępnione. Wersja 1.4.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Artefakt
activity-composezawiera teraz błąd lintLaunchDuringComposition, który uniemożliwia wywoływanie metodylaunchwActivityResultLauncherw ramach kompozycji, ponieważ kompozycja powinna być wolna od efektów ubocznych. Użyj interfejsów API do obsługi efektów ubocznych. (7c2bbe, b/191347220)
Zmiany w interfejsie API
- Klasa
ActivityResultContractzostała przepisana w języku Kotlin, aby deweloperzy piszący niestandardowe umowy w tym języku mogli określać prawidłową wartość null dla klas wejściowych i wyjściowych. (I8a8f5) - Klasa
ActivityResultContractsi jej kontrakty zostały przepisane w języku Kotlin, aby zapewnić prawidłową dopuszczalność wartości null. (I69802)
Wersja 1.4.0-alpha01
1 września 2021 roku
androidx.activity:activity:1.4.0-alpha01, androidx.activity:activity-compose:1.4.0-alpha01 i androidx.activity:activity-ktx:1.4.0-alpha01 są udostępnione. Wersja 1.4.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- AndroidX
ComponentActivityimplementuje teraz interfejsMenuHost. Dzięki temu każdy komponent może dodawać elementy menu doActionBar, dodając do aktywności instancjęMenuProvider. Każdy elementMenuProvidermożna opcjonalnie dodać za pomocą elementuLifecycle, który będzie automatycznie kontrolować widoczność tych pozycji menu na podstawie stanu elementuLifecyclei obsługiwać usuwanie elementuMenuProviderpo zniszczeniu elementuLifecycle. (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)
}
Zmiany w zachowaniu
- Funkcja
ActivityResultRegistrybędzie teraz zgłaszać wyjątekIllegalStateException, gdy spróbujesz wywołać funkcjęlaunch()na obiekcieActivityResultLauncher, który nie został zarejestrowany lub został wyrejestrowany. (Ida75d, b/192567522)
Wkład zewnętrzny
Wersja 1.3.1
Wersja 1.3.1
4 sierpnia 2021 r.
androidx.activity:activity:1.3.1, androidx.activity:activity-compose:1.3.1 i androidx.activity:activity-ktx:1.3.1 są udostępnione. Wersja 1.3.1 zawiera te zatwierdzenia.
Aktualizacje zależności
- Aktywność zależy teraz od języka Kotlin
1.5.21. - Activity Compose zależy teraz od Compose
1.0.1.
Wersja 1.3.0
Wersja 1.3.0
28 lipca 2021 roku
androidx.activity:activity:1.3.0, androidx.activity:activity-compose:1.3.0 i androidx.activity:activity-ktx:1.3.0 są udostępnione. Wersja 1.3.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.2.0
- Artefakt Activity Compose – artefakt
activity-composeudostępnia metodę rozszerzeniasetContentdo hostowania interfejsu Jetpack Compose w aktywności oraz specjalne otoki Compose do interakcji z interfejsamiComponentActivityAPI do obsługi systemowego przycisku Wstecz i interfejsów Activity Result API. Więcej informacji znajdziesz w dokumentacji. - Umowa CaptureVideo – umowa
CaptureVideoActivityResultContractzastępuje wycofaną już umowęTakeVideoi zwraca wartość logiczną oznaczającą powodzenie, która działa w wielu aplikacjach aparatu. - Śledzenie widoku podpowiedzi obrazu w obrazie – użytkownicy
activity-ktxmogą teraz używać metody rozszerzeniatrackPipAnimationHintViewnaActivity, aby automatycznie przebudowywaćPictureInPictureParamsz nową pozycją widoku, gdy zmienia on pozycję względem okna.
Wersja 1.3.0-rc02
14 lipca 2021 roku
androidx.activity:activity:1.3.0-rc02, androidx.activity:activity-compose:1.3.0-rc02 i androidx.activity:activity-ktx:1.3.0-rc02 są udostępnione. Wersja 1.3.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
- Wywołania zwrotne
ActivityResultRegistrysą teraz prawidłowo zapisywane i przywracane, dzięki czemu nie są duplikowane w obiekcie savedState. (I97816, b/191893160)
Wersja 1.3.0-rc01
1 lipca 2021 r.
Usługi androidx.activity:activity:1.3.0-rc01, androidx.activity:activity-compose:1.3.0-rc01 i androidx.activity:activity-ktx:1.3.0-rc01 są udostępniane bez zmian od 1.3.0-beta02. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.
Wersja 1.3.0-beta02
16 czerwca 2021 r.
androidx.activity:activity:1.3.0-beta02, androidx.activity:activity-compose:1.3.0-beta02 i androidx.activity:activity-ktx:1.3.0-beta02 są udostępnione. Wersja 1.3.0-beta02 zawiera te zatwierdzenia.
Zaktualizowano activity-compose, aby zależał od Compose 1.0.0-beta09. androidx.compose.ui:ui-test-junit4 ma teraz zależność w czasie kompilacji od activity-compose.
Wersja 1.3.0-beta01
2 czerwca 2021 r.
androidx.activity:activity:1.3.0-beta01, androidx.activity:activity-compose:1.3.0-beta01 i androidx.activity:activity-ktx:1.3.0-beta01 są udostępnione. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Wycofana wcześniej metoda
@Composable registerForActivityResult()została usunięta. UżyjrememberLauncherForActivityResult(). (Ic39d3)
Wersja 1.3.0-alpha08
18 maja 2021 r.
androidx.activity:activity:1.3.0-alpha08, androidx.activity:activity-compose:1.3.0-alpha08 i androidx.activity:activity-ktx:1.3.0-alpha08 są udostępnione. Wersja 1.3.0-alpha08 zawiera te zmiany.
Nowe funkcje
- Nowa funkcja
CaptureVideoActivityResultContractzwraca wartość logiczną do funkcjiActivityResultCallback, która wskazuje, czy film został zapisany pod danym identyfikatorem URI. Zastępuje to obecnie wycofany interfejsTakeVideo, ponieważ aplikacje aparatu bardzo rzadko obsługiwały zwracanie miniatury bitmapy, co sprawiało, że wynik był bezużyteczny. (Ie21f2, b/185938070) - Dodano nowy interfejs API
Activity#setPipAnimationHintView, który aktualizuje wskazówkę dotyczącą prostokąta źródłowego parametru PipParams za każdym razem, gdy widok się przesuwa. (I9063d)
Zmiany w interfejsie API
- Funkcja
rememberLauncherForActivityResultzwraca teraz program uruchamiający, który wycofuje funkcjęunregister()– rejestracja i wyrejestrowanie programu uruchamiającego są obsługiwane automatycznie przez funkcjęrememberLauncherForActivityResult. (I2443e)
Zgodność z Compose
androidx.activity:activity-compose:1.3.0-alpha08jest zgodny tylko z Compose w wersji1.0.0-beta07lub nowszej.
Wersja 1.3.0-alpha07
21 kwietnia 2021 r.
androidx.activity:activity:1.3.0-alpha07, androidx.activity:activity-compose:1.3.0-alpha07 i androidx.activity:activity-ktx:1.3.0-alpha07 są udostępnione. Wersja 1.3.0-alpha07 zawiera te zatwierdzenia.
Poprawki błędów
rememberLauncherForActivityResultzwraca teraz stabilne odwołanie do tej samej instancjiActivityResultLauncher, nawet jeśli umowa ulegnie zmianie z powodu ponownego zestawienia. (Id2d6d)- Używanie niestabilnych wersji Fragmentów powyżej
1.3.0nie będzie już zgłaszać fałszywego błędu lintera, który sugeruje użycie1.3.0. (aosp/1670206, b/184847092)
Wersja 1.3.0-alpha06
7 kwietnia 2021 r.
androidx.activity:activity:1.3.0-alpha06, androidx.activity:activity-compose:1.3.0-alpha06 i androidx.activity:activity-ktx:1.3.0-alpha06 są udostępnione. Wersja 1.3.0-alpha06 zawiera te zmiany.
Zmiany w interfejsie API
- Interfejs
registerForActivityResult()API został zmieniony narememberLauncherForActivityResult(), aby lepiej wskazywać, że zwracany obiektActivityResultLauncherjest obiektem zarządzanym, który jest zapamiętywany w Twoim imieniu. Próba wywołaniaunregisterzwróci teraz błądActivityResultLauncher. (I2bb6d) LocalOnBackPressedDispatcherOwner.currentiLocalActivityResultRegistryOwner.currentzwracają teraz wartość dopuszczającą wartość null, aby lepiej określić, czy jest ona dostępna w bieżącej kompozycji. Interfejsy API, które wymagają tych interfejsów, np.BackHandlerirememberLauncherForActivityResult(), będą teraz zgłaszać bardziej opisowy błąd, jeśli nie zostanie znaleziony właściciel bazowy.NavHostdziała teraz nawet wtedy, gdy nie znalezionoOnBackPressedDispatcherOwner, np. podczas wyświetlania podgląduNavHost. (I7d8b4)
Poprawki błędów
BackHandlerbędzie teraz prawidłowo przechwytywać naciśnięcia przycisku Wstecz w przypadku, gdy aktywność jestSTOPPED, a potem ponownieSTARTED. Dodano też inne wywołania zwrotne z LifecycleOwner. (I71de6, b/182284739)- Używanie rozszerzenia metody
launch()z niestandardowymActivityResultContract, które ma dane wejścioweUnit, nie będzie już powodować błęduNullPointerException(I76282, b/183837954).
Wersja 1.3.0-alpha05
24 marca 2021 r.
androidx.activity:activity:1.3.0-alpha05, androidx.activity:activity-compose:1.3.0-alpha05 i androidx.activity:activity-ktx:1.3.0-alpha05 są udostępnione. Wersja 1.3.0-alpha05 zawiera te zatwierdzenia.
Poprawki błędów
- W Activity 1.2.2: naprawiono problem w sprawdzaniu kodu
InvalidFragmentVersionForActivityResult, który powodował fałszywie pozytywny wynik podczas korzystania z biblioteki Fragment w wersji 1.3.1 lub nowszej. (I54da1, b/182388985) - W Activity 1.2.2:
ComponentActivityunika terazClassNotFoundExceptionpodczas uruchamianiaIntentzActivityResultContract, który był wcześniej przechowywany jako dodatkowy w innymIntent. (Ieff05, b/182906230)
Aktualizacje zależności
- Od Activity 1.2.2: działanie zależy teraz od Lifecycle
2.3.1.
Wersja 1.3.0-alpha04
10 marca 2021 r.
androidx.activity:activity:1.3.0-alpha04, androidx.activity:activity-compose:1.3.0-alpha04 i androidx.activity:activity-ktx:1.3.0-alpha04 są udostępnione. Wersja 1.3.0-alpha04 zawiera te zatwierdzenia.
Poprawki błędów
- W sekcji Aktywność
1.2.1:RequestMultiplePermissionszawsze zwraca teraz wyniki dla wszystkich żądanych uprawnień, a nie tylko dla tych, które nie zostały wcześniej przyznane. (I50bc3, b/180884668) - W sekcji Aktywność
1.2.1:ActivityResultRegistryzapewniamy teraz, że trwającelaunch()żądania zwrócą wyniki nawet wtedy, gdyunregister(), a potem ponownieregister()z tym samym kluczem. (I9ef34, b/181267562) - Biblioteka Activity Compose nie dodaje już zależności testowych do ścieżki klas środowiska wykonawczego. (Ifd8b3)
- Rozwiązaliśmy problem z funkcją
BackHandler, który powodował, że po rekompozycji nadal używana była wcześniej ustawiona lambdaonBack. (8eb5eb)
Wersja 1.3.0-alpha03
24 lutego 2021 r.
androidx.activity:activity:1.3.0-alpha03, androidx.activity:activity-compose:1.3.0-alpha03 i androidx.activity:activity-ktx:1.3.0-alpha03 są udostępnione. Wersja 1.3.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
- Dostępna jest teraz funkcja
registerForActivityResult, która umożliwia uzyskiwanie wyników z aktywności w kompozycjach. (Ia7851, b/172690553)
Zmiany w interfejsie API
LocalOnBackPressedDispatcherOwnerma terazprovides, które można używać zCompositionLocalProviderzamiast interfejsuasProvidableCompositionLocal()API. (I45d24)
Wersja 1.3.0-alpha02
10 lutego 2021 r.
androidx.activity:activity:1.3.0-alpha02, androidx.activity:activity-compose:1.3.0-alpha02 i androidx.activity:activity-ktx:1.3.0-alpha02 są udostępnione. Wersja 1.3.0-alpha02 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązaliśmy problem w Activity Compose
1.3.0-alpha01, który powodował wyjątekNoSuchMethodError: No static method setContentpodczas korzystania z Compose1.0.0-alpha12. Wszyscy użytkownicy funkcji Pisanie powinni korzystać z wersji1.3.0-alpha02lub nowszej. (b/179911234)
Zmiany w interfejsie API
- Interfejs
BackHandlerAPI umożliwia funkcji kompozycyjnej przechwytywanie systemowego przycisku Wstecz. (I58ed5, b/172154006)
Wersja 1.3.0-alpha01
10 lutego 2021 r.
androidx.activity:activity:1.3.0-alpha01, androidx.activity:activity-compose:1.3.0-alpha01 i androidx.activity:activity-ktx:1.3.0-alpha01 są udostępnione. Wersja 1.3.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Nowy artefakt
activity-composezawiera pomocnicze funkcje Jetpack Compose dlaandroidx.activitykonkretnych interfejsów API.ComponentActivity.setContentzostał przeniesiony zandroidx.compose.ui.platform.setContentdoandroidx.activity.compose.setContent. (Icf416)
Znane problemy
- Używanie Activity Compose
1.3.0-alpha01i bibliotek, które od niej zależą, np.androidx.compose.ui:ui-test-junit4:1.0.0-alpha12, spowoduje wyjątekNoSuchMethodError: No static method setContent. (b/179911234)
Wersja 1.2.4
Wersja 1.2.4
21 lipca 2021 r.
Publikacja androidx.activity:activity:1.2.4 i androidx.activity:activity-ktx:1.2.4 Wersja 1.2.4 zawiera te zatwierdzenia.
Poprawki błędów
- Z Activity
1.3.0-rc02: wywołania zwrotne ActivityResultRegistry są teraz prawidłowo zapisywane i przywracane, dzięki czemu nie są duplikowane w savedState. (I97816, b/191893160)
Wersja 1.2.3
Wersja 1.2.3
5 maja 2021 roku
Publikacja androidx.activity:activity:1.2.3 i androidx.activity:activity-ktx:1.2.3 Wersja 1.2.3 zawiera te zmiany.
Poprawki błędów
- Używanie rozszerzenia metody
launch()z niestandardowymActivityResultContract, które ma dane wejścioweUnit, nie będzie już powodować błęduNullPointerException(I76282, b/183837954). - Naprawiono błąd fałszywie dodatni narzędzia lint, który sugerował użycie fragmentu
1.3.0podczas korzystania z wersji snapshot, alpha, beta lub RC nowszej wersji biblioteki Fragment. (f4a57e, b/184847092)
Wersja 1.2.2
Wersja 1.2.2
24 marca 2021 r.
Publikacja androidx.activity:activity:1.2.2 i androidx.activity:activity-ktx:1.2.2 Wersja 1.2.2 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązaliśmy problem w sprawdzaniu kodu
InvalidFragmentVersionForActivityResult, który powodował fałszywie pozytywny wynik w przypadku używania biblioteki Fragment w wersji 1.3.1 lub nowszej. (I54da1, b/182388985) ComponentActivityunika terazClassNotFoundExceptionpodczas uruchamianiaIntentzActivityResultContract, który był wcześniej przechowywany jako dodatkowy w innymIntent. (Ieff05, b/182906230)
Aktualizacje zależności
- Aktywność zależy teraz od cyklu życia
2.3.1.
Wersja 1.2.1
Wersja 1.2.1
10 marca 2021 r.
Publikacja androidx.activity:activity:1.2.1 i androidx.activity:activity-ktx:1.2.1 Wersja 1.2.1 zawiera te zatwierdzenia.
Poprawki błędów
RequestMultiplePermissionszawsze zwraca wyniki dla wszystkich żądanych uprawnień, a nie tylko dla tych, które nie zostały wcześniej przyznane. (I50bc3, b/180884668)ActivityResultRegistryzapewnia teraz, że trwające żądanialaunch()zwrócą wyniki nawet wtedy, gdyunregister(), a potem ponownieregister()przy użyciu tego samego klucza. (I9ef34, b/181267562)
Wersja 1.2.0
Wersja 1.2.0
10 lutego 2021 r.
Publikacja androidx.activity:activity:1.2.0 i androidx.activity:activity-ktx:1.2.0 Wersja 1.2.0 zawiera te zatwierdzenia.
Najważniejsze zmiany od wersji 1.1.0
- Interfejsy Activity Result API:
ComponentActivityudostępniają terazActivityResultRegistry, który umożliwia obsługę przepływówstartActivityForResult()+onActivityResult()irequestPermissions()+onRequestPermissionsResult()bez zastępowania metod w aktywności lub fragmencie, zwiększa bezpieczeństwo typów dziękiActivityResultContracti zapewnia punkty zaczepienia do testowania tych przepływów. Zapoznaj się z aktualizacją artykułu Uzyskiwanie wyniku z aktywności.
ContextAware:ComponentActivityobsługuje terazContextAware, co umożliwia dodanie co najmniej jednej instancjiOnContextAvailableListener, która będzie otrzymywać wywołanie zwrotne przed podstawową instancjąActivity.onCreate().- Rozszerzenie Kotlinu zawieszające
withContextAvailable()umożliwia uruchomienie bloku niezawieszającego, gdy kontekst stanie się dostępny, i zwrócenie wyniku. - Ten interfejs API jest używany przez
FragmentActivityw fragmencie 1.3.0 do przywracania stanuFragmentManager. Wszyscy detektorzy dodani do podklasFragmentActivitybędą uruchamiani po tym detektorze. - Ten interfejs API jest używany przez
AppCompatActivityw AppCompat 1.3.0-alpha02 lub nowszej wersji. Wszyscy detektorzy dodani do podklasAppCompatActivitybędą uruchamiani po tym detektorze.
- Rozszerzenie Kotlinu zawieszające
ViewTreeSupport:ComponentActivityobsługuje teraz interfejsy APIViewTreeLifecycleOwner.get(View),ViewTreeViewModelStoreOwner.get(View)iViewTreeSavedStateRegistryOwnerdodane w Lifecycle2.3.0i SavedState1.1.0, dzięki czemu zwraca aktywność jakoLifecycleOwner,ViewModelStoreOwneriSavedStateRegistryOwnerw przypadku wszystkich widoków dodanych bezpośrednio doComponentActivity.
- Wsteczna implementacja metody reportFullyDrawn() – metoda
ActivityklasyreportFullyDrawn()została wstecznie zaimplementowana wComponentActivity, aby działać na wszystkich poziomach API. Rozwiązuje to problem z awarią na poziomie API 19 i dodaje śledzenie tej metody na wszystkich poziomach API.
Wersja 1.2.0-rc01
16 grudnia 2020 roku
Publikacja androidx.activity:activity:1.2.0-rc01 i androidx.activity:activity-ktx:1.2.0-rc01 Wersja 1.2.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Funkcja
ActivityResultRegistryzawsze przywraca dokładny stan, który został zapisany. (Idd56b) - Dodawanie śledzenia do
ComponentActivity.reportFullyDrawn(Ic7632)
Wkład zewnętrzny
ComponentActivityzastępuje terazreportFullyDrawn(), co umożliwia wywoływanie go na wszystkich poziomach interfejsu API i naprawia błąd powodujący awarię podczas wywoływania tej metody bez odpowiednich uprawnień systemowych na urządzeniach z interfejsem API 19. Dziękujemy, Simon Schiller! (b/163239764, #103)
Wersja 1.2.0-beta02
2 grudnia 2020 r.
Publikacja androidx.activity:activity:1.2.0-beta02 i androidx.activity:activity-ktx:1.2.0-beta02 Wersja 1.2.0-beta02 zawiera te zmiany.
Poprawki błędów
- Rozwiązaliśmy problem, który powodował, że interfejs Activity Result API nie czekał na przejście cyklu życia do stanu
STARTEDprzed dostarczeniem wyników, gdy był zarejestrowany wLifecycle. (I109ea)
Wkład zewnętrzny
- Zaktualizowaliśmy dokumentację
launch(), aby wyraźnie zaznaczyć, że może ona zgłaszać wyjątekActivityNotFoundException. Dziękujemy Michałowi Zielińskiemu. (aosp/1493580)
Wersja 1.2.0-beta01
1 października 2020 roku
Publikacja androidx.activity:activity:1.2.0-beta01 i androidx.activity:activity-ktx:1.2.0-beta01 Wersja 1.2.0-beta01 zawiera te zatwierdzenia.
Poprawki błędów
ActivityResultRegistrylosowo generuje teraz liczby całkowite, dopóki nie znajdzie liczby, która nie jest przypisana do kodu żądaniaregister(). Zapobiega to możliwemu przepełnieniu liczby całkowitej spowodowanemu zwiększaniem kodów żądań. (b/168779518)Lifecycleobserwatorzy są prawidłowo usuwani podczas wywoływaniaunregister()naActivityResultLauncher. (b/165608393)
Zmiany w zachowaniu
- Funkcja
ActivityResultRegistryzgłasza teraz błądIllegalStateExceptionpodczas próby wywołania funkcjiregister()z obiektemLifecycleOwner, którego właściwośćLifecycleosiągnęła już wartośćSTARTED. (b/165435866)
Zaktualizowana dokumentacja
ContextAwaredokumentacjiLifecycleOwner, aby podkreślić, żeLifecyclewywołania zwrotne są odpowiednim miejscem na zdarzenia tworzenia i usuwania. (aosp/1414152)
Wersja 1.2.0-alpha08
19 sierpnia 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha08 i androidx.activity:activity-ktx:1.2.0-alpha08 Wersja 1.2.0-alpha08 zawiera te zmiany.
Nowe funkcje
ComponentActivityimplementuje terazContextAware, co umożliwia dodanie co najmniej 1 instancjiOnContextAvailableListener, która otrzyma wywołanie zwrotne przed podstawową instancjąActivity.onCreate(). (b/161390636)- Rozszerzenie Kotlinu zawieszające
withContextAvailable()umożliwia uruchomienie bloku niezawieszającego, gdy kontekst stanie się dostępny, i zwrócenie wyniku. (I8290c) - Ten interfejs API jest używany przez
FragmentActivityw fragmencie 1.3.0-alpha08 do przywracania stanuFragmentManager. Wszyscy detektorzy dodani do podklasFragmentActivitybędą uruchamiani po tym detektorze. (I513da) - Ten interfejs API jest używany przez
AppCompatActivityw AppCompat 1.3.0-alpha02. Wszyscy detektorzy dodani do podklasAppCompatActivitybędą uruchamiani po tym detektorze. (I513da)
- Rozszerzenie Kotlinu zawieszające
Poprawki błędów
- Rozwiązaliśmy problem z
ActivityResultFragmentVersionDetectorsprawdzaniem Lint, który powodował awarię podczas korzystania z Lint w wersji 27.1.0 lub nowszej. (b/162155191)
Wersja 1.2.0-alpha07
22 lipca 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha07 i androidx.activity:activity-ktx:1.2.0-alpha07 Wersja 1.2.0-alpha07 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy nowe
InvalidFragmentVersionForActivityResultsprawdzanie lint, które weryfikuje, czy podczas korzystania z interfejsu Activity Result API używasz Fragmentu1.3.0-alpha07. Pozwala to uniknąć awarii w czasie działania z powodu problemów z „nieprawidłowym kodem żądania” i nieprawidłowo działających próśb o uprawnienia spowodowanych używaniem starszych wersji fragmentów. (b/152554847)
Wkład zewnętrzny
- Naprawiono
ArrayIndexOutOfBoundsExceptionpodczas analizowania wyników kontraktuRequestPermissionActivityResult. (I8f9e3, b/161057605)
Wersja 1.2.0-alpha06
10 czerwca 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha06 i androidx.activity:activity-ktx:1.2.0-alpha06 Wersja 1.2.0-alpha06 zawiera te zmiany.
Nowe funkcje
- Możesz teraz rozłożyć klasę
ActivityResultw Kotlinie, aby uzyskać bezpośredni dostęp dorequestCodeiintent. (b/157212935) ActivityResultLauncherumożliwia teraz uzyskanieActivityResultContract, który został użyty do zarejestrowania programu uruchamiającego. (b/156875743)
Zmiany w interfejsie API
- Zmiana powodująca niezgodność: metoda
invoke()w interfejsieActivityResultRegistryzostała zmieniona naonLaunch(). (b/157496491) - Jeśli nie zostanie zwrócony żaden wynik,
OpenMultipleDocumentskontrakt zwraca teraz pustą listę zamiastnulldo zarejestrowanego wywołania zwrotnego. (b/157348014)
Wersja 1.2.0-alpha05
20 maja 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha05 i androidx.activity:activity-ktx:1.2.0-alpha05 Wersja 1.2.0-alpha05 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy obsługę właściwości
ViewTreeViewModelStoreOwnerz elementu Lifecycle2.3.0-alpha03i właściwościViewTreeSavedStateRegistryOwnerz elementu SavedState1.1.0-alpha01podczas używania elementuVieww elemencieComponentActivity. (aosp/1297993, aosp/1300264)
Zmiany w interfejsie API
TakePictureKontrakt zwraca terazbooleanwskazujący powodzenie, a nie miniaturęBitmap, ponieważ było to bardzo rzadko obsługiwane przez aplikacje aparatu podczas zapisywania obrazu w podanymUri. (b/154302879)- Rozszerzenia
invoke()w przypadkuActivityResultLauncherzostały usunięte na rzecz jawnego używanialaunch(), aby lepiej wskazywać, że są to operacje asynchroniczne. Do pakietuandroidx.activity.resultdlaActivityResultLauncher<Void>iActivityResultLauncher<Unit>dodano rozszerzenia Kotlin dlalaunch, które eliminują konieczność przekazywania odpowiednionulllubUnit, co odzwierciedla działanie poprzednich rozszerzeńinvoke(). (aosp/1304674, aosp/1304675) - Metody
IntentSenderRequest.BuilderdlasetFlagsMask()isetFlagsValues()zostały połączone w jedną metodęsetFlags(). (aosp/1302111)
Poprawki błędów
- Podczas rejestrowania obiektu
ActivityResultCallbackza pomocą obiektuLifecycleOwnerrozwiązaliśmy problem polegający na tym, że wywołanie zwrotne było wywoływane, zanim stan osiągnął wartośćSTARTED. (aosp/1309744)
Zmiany w zachowaniu
ActivityResultRegistrygeneruje teraz kody żądań zaczynające się od0xFFFFzamiast od0, co zapobiega nakładaniu się kodów podczas używaniastartActivityForResult()lubrequestPermissions()w aktywności. (aosp/1302324)
Wersja 1.2.0-alpha04
29 kwietnia 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha04 i androidx.activity:activity-ktx:1.2.0-alpha04 Wersja 1.2.0-alpha04 zawiera te zmiany.
Nowe funkcje
- Dodano kontrakt, który może wywoływać startIntentSenderForResult w interfejsach API ActivityResult. (b/153007517)
Zmiany w interfejsie API
- Metoda
prepareCall()została zmieniona naregisterForActivityResult()zarównoComponentActivitytutaj, jak i w fragmencie1.3.0-alpha04. (aosp/1278717) - Umowy
GetContents,OpenDocumentsiRequestPermissionszostały zmienione naGetMultipleContents,OpenMultipleDocumentsiRequestMultiplePermissions. (aosp/1280161) ComponentActivityimplementuje teraz interfejsActivityResultRegisteryOwner. (aosp/1290888)- – Interfejsy API
startActivityForResult()/onActivityResult()ionRequestPermissionsResult()na platformieComponentActivityzostały wycofane. Użyj interfejsów Activity Result API. (b/154751887)
Poprawki błędów
- W przypadku korzystania z umów
GetMultipleContentsiOpenMultipleDocumentsoraz wybrania pojedynczego elementu jest on teraz prawidłowo zwracany do wywołania zwrotnego. (b/152941153)
Wersja 1.2.0-alpha03
1 kwietnia 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha03 i androidx.activity:activity-ktx:1.2.0-alpha03 Wersja 1.2.0-alpha03 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy do zestawu gotowych umów dostarczanych przez
ActivityResultContractsumowyTakeVideo,PickContact,GetContent,GetContents,OpenDocument,OpenDocuments,OpenDocumentTreeiCreateDocument. (aosp/1262482, aosp/1266916, aosp/1268960) - Interfejsy API Activity Result obsługują teraz uruchamianie aktywności w celu uzyskania wyniku z opcjonalnym
ActivityOptionsCompat. (b/151860054)
Zmiany w interfejsie API
- Umowa
TakePictureprzyjmuje teraz dane wejścioweUriokreślające miejsce przechowywania obrazu. Poprzednia umowa, która nie przyjmuje żadnych danych wejściowych, została zmieniona naTakePicturePreview. (aosp/1262482) - Metoda
registerActivityResultCallback()w usłudzeActivityResultRegistryzostała zmieniona naregister(). (aosp/1267621) - Metoda
dispose()wActivityResultLauncherzostała zmieniona naunregister(), a metodaunregisterResultCallback()wActivityResultRegistryzostała usunięta. (aosp/1267621) - Metoda
createIntent()ActivityResultContactwymaga terazContextoprócz danych wejściowych, aby umożliwić tworzenie jawnych intencji. (aosp/1238800) ActivityResultContractmoże teraz zastąpićgetSynchronousResult(), aby dostarczyć wynik bez wywoływaniastartActivityForResult. Jest on używany przez umowyRequestPermissioniRequestPermissions, aby prawidłowo przekazywać stan „przyznano”, jeśli żądane uprawnienia zostały już przyznane. (b/151110799)- Wcześniej dostępna umowa
Dialzostała usunięta, ponieważIntentnie jest przeznaczony do używania zstartActivityForResult(). (aosp/1266916) - Wiele interfejsów API wyników aktywności, które nie są przeznaczone do rozszerzania, jest teraz
final. Obejmuje togetActivityResultRegistry(), metodyprepareCall(), wszystkie metodyActivityResultRegistryz wyjątkieminvoke()oraz wiele domyślnych umów, które nie obsługują opcjonalnych dodatków. (b/152439361)
Poprawki błędów
- Naprawiliśmy
NullPointerExceptionwActivityResultRegistry, który występował podczas próby dostarczenia wyników do wywołania zwrotnego, które nie zostało jeszcze ponownie zarejestrowane po zmianie konfiguracji.ActivityResultRegistryprzechowuje teraz te oczekujące wyniki i dostarcza je po ponownej rejestracji wywołania zwrotnego. (b/152137004)
Wersja 1.2.0-alpha02
18 marca 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha02 i androidx.activity:activity-ktx:1.2.0-alpha02 Wersja 1.2.0-alpha02 zawiera te zmiany.
Nowe funkcje
- ActivityResultRegistry:
ComponentActivityudostępnia terazActivityResultRegistry, który umożliwia obsługę przepływówstartActivityForResult()+onActivityResult()irequestPermissions()+onRequestPermissionsResult()bez zastępowania metod w aktywności lub fragmencie, zwiększa bezpieczeństwo typów dziękiActivityResultContracti zapewnia punkty zaczepienia do testowania tych przepływów. Zapoznaj się z aktualizacją artykułu Uzyskiwanie wyniku z aktywności. (b/125158199)
Wersja 1.2.0-alpha01
4 marca 2020 r.
Publikacja androidx.activity:activity:1.2.0-alpha01 i androidx.activity:activity-ktx:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Dodano obsługę interfejsu API
ViewTreeLifecycleOwner.get(View)dodanego w Lifecycle2.3.0-alpha01, dzięki czemu zwraca on aktywność jakoLifecycleOwnerw przypadku wszystkich widoków dodanych bezpośrednio do aktywności. (aosp/1182955)
Poprawki błędów
- Naprawiliśmy regresję wprowadzoną w aktywności
1.1.0podczas działania na starszych wersjach platformy, w którychonBackPressed()powodowałIllegalStateExceptionz powodu błędu wandroid.app.FragmentManager. (b/146290338)
Wersja 1.1.0
Wersja 1.1.0
22 stycznia 2020 r.
Publikacja androidx.activity:activity:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Ważne zmiany od wersji 1.0.0
- Integracja ViewModel z cyklem życia SavedState:
SavedStateViewModelFactoryjest teraz domyślną fabryką używaną podczas korzystania zby viewModels(), konstruktoraViewModelProviderlubViewModelProviders.of()zComponentActivitylub jego podklasami.
Wersja 1.1.0-rc03
4 grudnia 2019 r.
Publikacja androidx.activity:activity:1.1.0-rc03 i androidx.activity:activity-ktx:1.1.0-rc03 Wersja 1.1.0-rc03 zawiera te zmiany.
Zmiany zależności
- Działanie zależy teraz od komponentu Lifecycle
2.2.0-rc03i komponentu Lifecycle ViewModel SavedState1.0.0-rc03.
Wersja 1.1.0-rc02
7 listopada 2019 r.
Publikacja androidx.activity:activity:1.1.0-rc02 i androidx.activity:activity-ktx:1.1.0-rc02 Wersja 1.1.0-rc02 zawiera te zmiany.
Zmiany zależności
- Aktywność zależy teraz od cyklu życia
2.2.0-rc02.
Wersja 1.1.0-rc01
23 października 2019 r.
androidx.activity:activity:1.1.0-rc01 i androidx.activity:activity-ktx:1.1.0-rc01 są publikowane bez zmian w porównaniu z 1.1.0-beta01. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.
Wersja 1.1.0-beta01
9 października 2019 r.
Publikacja androidx.activity:activity:1.1.0-beta01 i androidx.activity:activity-ktx:1.1.0-beta01 Wersja 1.1.0-beta01 zawiera te zmiany.
Zmiany zależności
- Aktywność zależy teraz od stabilnej wersji SavedState 1.0.0.
Wersja 1.1.0-alpha03
5 września 2019 r.
Publikacja androidx.activity:activity:1.1.0-alpha03 i androidx.activity:activity-ktx:1.1.0-alpha03 Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Nowe funkcje
- Aktywność zależy teraz od stabilnej wersji Core 1.1.0.
Poprawki błędów
- Aktywność zależy teraz od cyklu życia
2.2.0-alpha04.
Wersja 1.1.0-alpha02
7 sierpnia 2019 r.
Publikacja androidx.activity:activity:1.1.0-alpha02 i androidx.activity:activity-ktx:1.1.0-alpha02 Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Nowe funkcje
SavedStateViewModelFactoryjest teraz domyślną fabryką używaną podczas korzystania z funkcjiby viewModels(), konstruktoraViewModelProviderlub funkcjiViewModelProviders.of()z obiektemComponentActivity(b/135716331).
Wersja 1.1.0-alpha01
2 lipca 2019 r.
Publikacja androidx.activity:activity:1.1.0-alpha01 i androidx.activity:activity-ktx:1.1.0-alpha01 Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Nowe funkcje
activityzależy teraz od komponentu Lifecycle2.2.0-alpha02. (aosp/1007817)activity-ktxdodano zależność odlifecycle-runtime-ktx. Nie musisz już dodawać jej do zależności, gdy używaszactivity-ktxlub bibliotek, które są odactivity-ktxniej zależne (np.fragment-ktx). (aosp/987162)
Wersja 1.0.0
Wersja 1.0.0
5 września 2019 r.
Publikacja androidx.activity:activity:1.0.0 i androidx.activity:activity-ktx:1.0.0 Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Główne funkcje wersji 1.0.0
- ComponentActivity:
ComponentActivityto nowa klasa bazowa dlaFragmentActivityw fragmencie1.1.0i w konsekwencjiAppCompatActivityw AppCompat1.1.0. - activity-ktx: moduł
activity-ktxzawiera rozszerzenie właściwości Kotlinby viewModelsdo uzyskiwania dostępu do ViewModeli. Ten moduł jest automatycznie uwzględniany, gdy dodaszfragment-ktxz fragmentu1.1.0. - OnBackPressedDispatcher: jako alternatywę dla zastępowania
onBackPressed()możesz teraz zarejestrowaćOnBackPressedCallbackw dowolnymLifecycleOwner(np. we fragmencie), aby przechwytywać zdarzenia systemowego przycisku Wstecz. Doactivity-ktxdodano lambdę z odbiornikiem w wersjiaddCallback. Więcej informacji znajdziesz w dokumentacji dotyczącej zapewniania niestandardowego przechodzenia wstecz. - Wycofanie metody onRetainCustomNonConfigurationInstance: wycofano interfejs API
onRetainCustomNonConfigurationInstance()i powiązany z nim interfejsgetLastCustomNonConfigurationInstance(). Zdecydowanie zalecamy używanie ViewModeli do przechowywania stanu niekonfiguracyjnego, ponieważ oferują one rozwiązanie kompozycyjne odpowiednie dla każdegoViewModelStoreOwner, które sprawia, że własność zachowanych obiektów jest jasna, i zapewnia wywołanie zwrotneonCleared()do czyszczenia zasobów, gdy aktywność zostanie ostatecznie zniszczona.
Wersja 1.0.0-rc01
2 lipca 2019 r.
androidx.activity:activity:1.0.0-rc01 i androidx.activity:activity-ktx:1.0.0-rc01 są publikowane bez zmian w porównaniu z 1.0.0-beta01. Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Wersja 1.0.0-beta01
5 czerwca 2019 r.
androidx.activity::activity:1.0.0-beta01 i androidx.activity:activity-ktx:1.0.0-beta01 są publikowane bez zmian w porównaniu z 1.0.0-alpha08. Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Wersja 1.0.0-alpha08
7 maja 2019 r.
Publikacja androidx.activity:activity:1.0.0-alpha08 i androidx.activity:activity-ktx:1.0.0-alpha08 Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Zmiany w interfejsie API
- Zmiana powodująca niezgodność: usunięto wcześniej wycofane metody
addOnBackPressedCallbackiremoveOnBackPressedCallbackw klasieComponentActivity. aosp/953857 - Metody
setEnabled()iisEnabled()interfejsuOnBackPressedCallbacksą już ostateczne. b/131416833 - Metoda
remove()wOnBackPressedCallbackjest już ostateczna. aosp/952720 OnBackPressedDispatcherma teraz konstruktory publiczne, które umożliwiają tworzenie własnych instancji na potrzeby testowania itp. aosp/953431onBackPressed()dlaComponentActivityjest teraz wyraźnie oznaczony jako@MainThreadaosp/952721
Poprawki błędów
- Naprawiliśmy błąd
ConcurrentModificationExceptionpodczas wywoływania funkcjiremove()w metodziehandleOnBackPressed()klasyOnBackPressedCalbackdodanej za pomocą funkcjiLifecycleOwner. b/131765095
Wersja 1.0.0-alpha07
25 kwietnia 2019 r.
Publikacja androidx.activity:activity:1.0.0-alpha07 i androidx.activity:activity-ktx:1.0.0-alpha07 Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Zmiany w interfejsie API
Ta wersja wprowadza istotne zmiany w obsłudze onBackPressed(). Więcej informacji znajdziesz w zaktualizowanej dokumentacji dotyczącej niestandardowego zwrotu środków.
- Metody
OnBackPressedCallbackiOnBackPressedDispatcherzostały oznaczone jako@MainThread. (aosp/943813) - Metoda
handleOnBackPressed()nie zwraca już wartościboolean. Zamiast tegoOnBackPressedCallbackjest teraz klasą abstrakcyjną, którą można włączać i wyłączać. FunkcjahandleOnBackPressed()jest wywoływana tylko wtedy, gdy nowa metodaisEnabled()zwraca wartość true. W takim przypadku musisz obsługiwać przycisk Wstecz. (aosp/944518) - Metody
addCallbackklasyOnBackPressedDispatchernie zwracają już instancjiCancellable.OnBackPressedCallbackzawiera teraz metodęremove(), która spełnia tę funkcję, umożliwiając wywoływanieremove()podczashandleOnBackPressed(). (aosp/944519) (aosp/946316) activity-ktxzawiera teraz wywołanie zwrotne w zakresie odbiornika dlaaddCallback, które akceptuje lambdę implementującąhandleOnBackPressed()i ma dostęp doisEnablediremove()(aosp/944520).
Wersja 1.0.0-alpha06
3 kwietnia 2019 r.
Publikacja androidx.activity:activity:1.0.0-alpha06 i androidx.activity:activity-ktx:1.0.0-alpha06 Zatwierdzenia uwzględnione w tej wersji znajdziesz tutaj.
Zmiany w interfejsie API
- Klasa ComponentActivity zawiera teraz drugi konstruktor, który przyjmuje parametr
@LayoutRes int. Zastępuje on poprzednie zachowanie polegające na dodawaniu do klasy AppCompatActivity adnotacji@ContentView. To podejście działa zarówno w modułach aplikacji, jak i biblioteki. (b/128352521) - Powiązane interfejsy API
OnBackPressedCallbackw klasie ComponentActivity zostały wycofane na rzecz nowego interfejsuOnBackPressedDispatcher, który można pobrać za pomocągetOnBackPressedDispatcher(). (aosp/922523) - Metody dodawania nowego elementu
OnBackPressedCallbackdo elementuOnBackPressedDispatcherzwracają teraz obiektCancellable, co umożliwia usunięcie wywołania zwrotnego bez konieczności jawnego odwoływania się do elementuOnBackPressedDispatcher. (aosp/922523) - Dodanie
OnBackPressedCallbackz powiązanymLifecycleOwnerpowoduje teraz dodanie i usunięcieOnBackPressedCallbackodpowiednio po rozpoczęciu i zakończeniu cyklu życia. (aosp/922523)
Wersja 1.0.0-alpha05
13 marca 2019 r.
androidx.activity:activity:1.0.0-alpha05 i androidx.activity:activity-ktx:1.0.0-alpha05 są dostępne. Pełną listę zmian
uwzględnionych w tej wersji znajdziesz tutaj.
Nowe funkcje
- Wyszukiwania adnotacji
@ContentViewsą teraz zapisywane w pamięci podręcznej (b/123709449).
Wersja 1.0.0-alpha04
30 stycznia 2019 r.
androidx.activity:activity 1.0.0-alpha04 i androidx.activity:activity-ktx 1.0.0-alpha04 są dostępne.
Nowe funkcje
- Dodano obsługę adnotacji klasy
@ContentView, która umożliwia wskazanie, który plik XML układu powinien zostać rozszerzony jako alternatywa dla użyciasetContentView(). (aosp/837619)
Zmiany w interfejsie API
- Dodaliśmy informację, że wartości
getViewModelStore()nie należy zastępować i w przyszłej wersji zostanie ona ostatecznie ustalona. Jeśli obecnie zastępujesz tę metodę, prześlij prośbę o dodanie funkcji. (aosp/837619)
Poprawki błędów
- Moduł
activityzależy teraz od wersji 2.1.0-alpha02 modułu ViewModel, aby pasować do zależności modułuactivity-ktx.
Wersja 1.0.0-alpha03
17 grudnia 2018 r.
Publikacja androidx.activity 1.0.0-alpha03
Nowe funkcje
- Klasa ComponentActivity implementuje teraz interfejs
BundleSavedStateRegistryOwneri jest zależna od nowo wydanej biblioteki SavedState [aosp/815133]. - ComponentActivity obejmuje teraz błąd platformy Androida, który powodował wyciek ostatniego widoku, na którym skupiał się InputMethodManager [b/37122102].
Wersja 1.0.0-alpha02
3 grudnia 2018 r.
Zmiany w interfejsie API
- Dodano informację, że nie należy zastępować wartości
getLifecycle(), a w przyszłej wersji zostanie ona zmieniona nafinal. Jeśli obecnie zastępujesz tę metodę, prześlij prośbę o dodanie funkcji. (aosp/815834)
Wersja 1.0.0-alpha01
5 listopada 2018 r.
androidx.activity 1.0.0-alpha01 wprowadza
ComponentActivity, nową klasę bazową istniejących klas FragmentActivity i
AppCompatActivity.
Nowe funkcje
- Możesz teraz zarejestrować
OnBackPressedCallbackza pomocąaddOnBackPressedCallbacki otrzymywaćonBackPressed()wywołania zwrotne bez konieczności zastępowania metody w aktywności. - Dodaliśmy nowy delegat właściwości Kotlin
by viewModels()do pobieraniaViewModels zComponentActivity. - Oczekujące zdarzenia wejściowe (np. kliknięcia) są teraz anulowane w
onStop().
Zmiany w interfejsie API
- Implementacja funkcji
LifecycleOwneriViewModelStoreOwnerzostała przeniesiona zFragmentActivitydoComponentActivity. - Środowisko wykonawcze
onRetainCustomNonConfigurationInstancezostało wycofane. UżywajViewModeldo przechowywania obiektów, które muszą przetrwać zmiany konfiguracji.