Aktywność
| Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja alfa |
|---|---|---|---|---|
| 9 września 2026 r. | 1.13.0 | - | - | 1.14.0-alpha02 |
Deklarowanie zależności
Aby dodać zależność od Activity, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w artykule 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 dodać swój głos do istniejącego problemu, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.14
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ą zwalniane. 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ą zwalniane. 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 wyeksportowanych aktywności mogą zastąpić wartośćdefaultViewModelArgs, aby jawnie podać zweryfikowane dodatki do intencji. (Id0cb6, b/213646066) - Klasa Activity udostępnia teraz funkcje fabryczne
NavigationEventDispatcherOwneriOnBackPressedDispatcherOwner, które ułatwiają tworzenie instancji odpowiednich komponentów. (I1d259, Iadd5c) OnBackPressedDispatcherma 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ą zwalniane. 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 przez dowolny komponent zdarzeń zmiany stanu interfejsu obrazu w obrazie.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ą zwalniane. Wersja 1.13.0-rc01 zawiera te zmiany.
Poprawki błędów
- W aktywności 1.12.4:
ActivityResultContractsZdjęcia i filmy będą teraz prawidłowo uruchamiane 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ą zwalniane. 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
- W bibliotece Activity w wersji 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ą zwalniane. 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ą zwalniane. 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ą zwalniane. 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
OnBackPressedCallbackuwzględniającym cykl życia zastępowało stan cyklu życia, co mogło powodować awarie. (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ą zwalniane. 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ą zwalniane. 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 podstawie interfejsówNavigationEventAPI, 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ą zwalniane. Wersja 1.12.0-rc01 zawiera te zmiany.
Poprawki błędów
- Naprawianie błędów czasu 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ą zwalniane. 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 włącza 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
- Zaktualizowano zależności związane z cyklem ż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ą zwalniane. 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ą zwalniane. 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ą zwalniane. Wersja 1.12.0-alpha07 zawiera te zmiany.
Poprawki błędów
- Rozwiązanie problemu z
EdgeToEdgew 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ą zwalniane. Wersja 1.12.0-alpha06 zawiera te zmiany.
MinSdk Update
- Domyślna wartość
minSdkdla AndroidaX została przeniesiona 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) - Zaktualizowano dokumentację KDocs dla funkcji
BackHandleriPredictiveBackHandler, aby wyraźnie określić zachowanie „ostatni element wygrywa” oraz zalecać bezwarunkowe komponowanie 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ą zwalniane. 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ą zwalniane. 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ą zwalniane. 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ą zwalniane. Wersja 1.12.0-alpha02 zawiera te zmiany.
Poprawki błędów
- W NavigationEvent
1.0.0-alpha02: naprawionoConcurrentModificationException, który mógł wystąpić, gdy wywoływanoNavigationEventCallback.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ą zwalniane. 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ł przepisany na podstawie nowej biblioteki, wszystkie poprzednie zastosowania powinny nadal działać prawidłowo. Zalecamy używanie w przyszłości funkcjiNavigationEventDispatcheriNavigationEventCallback. (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ą zwalniane. Wersja 1.11.0 zawiera te zmiany.
Ważne zmiany od wersji 1.10.0:
- Dodano interfejs API
MediaCapabilitiesdoPickVisualMediaRequest, 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ą zwalniane. 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ą zwalniane. 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ą zwalniane. Wersja 1.11.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Zintegrowaliśmy 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ą zwalniane. Wersja 1.11.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Dodano interfejs API
MediaCapabilitiesdoPickVisualMediaRequest, 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ą zwalniane. 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ą zwalniane. 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.- Umowy
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 rozwiązania rezerwowego. - Nowy
LocalActivitycomposition local, który 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ą zwalniane. Wersja 1.10.0-rc01 zawiera te zmiany.
Poprawki błędów
- Rozwiązaliśmy problem, który powodował, że zmiana stanu włączenia, gdy
PredictiveBackHandlerjest obecnie aktywny, natychmiast przerywała wywołanie zwrotne. Teraz dokończy bieżące wywołanie zwrotne niezależnie od zmian stanu włączonego. (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 nie zawierają żadnych 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ą zwalniane. Wersja 1.10.0-alpha03 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano nową kompozycję
LocalActivity, która udostępniaActivityw bieżącym zakresie, 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
- Biblioteka 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ą zwalniane. 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 wrażenia użytkowników, którzy mają na urządzeniach najnowszą wersję Usług Google Play. (I3513d)
Poprawki błędów
- Usunięto ręczne określanie dostępu do nowych interfejsów API platformy, ponieważ odbywa się to automatycznie za pomocą modelowania interfejsów 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). Klienci, którzy nie korzystają z wtyczki Androida do obsługi Gradle, powinni zaktualizować D8 do wersji 8.1 lub nowszej. Więcej szczegółów znajdziesz w tym artykule. (I9496c, b/345472586)
- W sekcji Aktywność
1.9.2: rozwiązano problem polegający na tym, że interfejs Activity ComposePredictiveBackHandlerAPI 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 w przypadku pustego stosu wstecznego, 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 przywróceniu systemu 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ą zwalniane. Ta wersja jest opracowywana w wewnętrznej gałęzi.
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 karty (albumy lub obrazy), która 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ą zwalniane. 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ą zwalniane. 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 cofania w systemie w ramce, w której został wyłączony. Mogło to 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)
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ą zwalniane. 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ą zwalniane. 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, gdy wywoływana jest funkcjaonBackPressedDispatcher.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 Activity zostały przepisane w języku Kotlin, 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 błędy w kodzie źródłowym, 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ą zwalniane. 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ą zwalniane. 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ą zwalniane. Wersja 1.9.0-alpha03 zawiera te zatwierdzenia.
Ostrzeżenie lintera
- Interfejsy API
OnBackPressedCallback,BackHandleriPredictiveBackHandlerostrzegają teraz, gdy wywoływana jest funkcjaonBackPressedDispatcher.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ą zwalniane. 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ę na polaresultCodeidata, 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 elementy wokół wycięć na wyświetlaczu. (a3644b, b/311173461) - W Activity
1.8.2: poprawiono dodatkowy element przekazywany doACTION_SYSTEM_FALLBACK_PICK_IMAGESw umowie dotyczącej aktywności selektora zdjęć, aby prawidłowo przekazywać go za pomocą kluczaEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, a nie za pomocą dodatkowego elementu z kluczem"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". Jeśli jesteś producentem OEM, który wdraża systemowy selektor zdjęć, 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ą zwalniane. 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 konwersji metodagetContractjest teraz abstrakcyjną właściwością 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 usługi podstawowej
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ą zwalniane. Wersja 1.8.2 zawiera te zatwierdzenia.
Poprawki błędów
- Poprawiono dodatkowe dane przekazywane do
ACTION_SYSTEM_FALLBACK_PICK_IMAGESumowy dotyczącej aktywności selektora zdjęć, aby prawidłowo przekazywać je za pomocą kluczaEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, a nie za pomocą 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ęć, 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ą zwalniane. 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 cofania. (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ą zwalniane. 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 wstecz, jego postęp i anulowanie. Oprócz tego dostępne jest poprzednie wywołanie zwrotnehandleOnBackPressed(), które jest wywoływane, gdy gest wstecz zostanie zatwierdzony. 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ć metody OnBackPressedDispatcher zamiast ją zastępować.
- 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ą zwalniane. 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ą zwalniane. 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ą zwalniane. Wersja 1.8.0-alpha07 zawiera te zatwierdzenia.
Nowe funkcje
W Activity Compose dodano nową funkcję kompozycyjną
PredictiveBackHandler, która obsługuje zdarzenia gestu przewidywanego przejścia wstecz. ZawieraFlowobiektówBackEventCompat, które należy zebrać w zawieszającej się lambdzie: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
Flowwywołującollect(). (Id2773, b/294884345)Obiekt
onBackPressedDispatcherwComponentActivityjest teraz inicjowany z opóźnieniem, dzięki czemu jest tworzony tylko wtedy, gdy jest wymagany. (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ą zwalniane. Wersja 1.8.0-alpha06 zawiera te zatwierdzenia.
Nowe funkcje
OnBackPressedDispatcher– teraz prawidłowo anuluje wszystkie wywołania zwrotne, które zostały usunięte podczas gestu przewidywanego przejścia wstecz. (I3f90f)
Zmiany w interfejsie API
- Podczas przekazywania parametru
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ą zwalniane. Ta wersja jest opracowywana w wewnętrznej gałęzi.
Zmiany w interfejsie API
- Klasa Activity udostępnia teraz klasę
BackEventCompat, która jest wersją klasyBackEventzgodną wstecznie i odłączoną od klasyBackEventframeworka. - Zmiana powodująca niezgodność: metody
handleOnBackStartedihandleOnBackProgressedklasyOnBackPressedCallbackotrzymują teraz instancjęandroidx.activity.BackEventCompatzamiast klasyandroid.window.BackEventframeworka. Zaktualizowaliśmy też odpowiednie interfejsy API@VisibleForTestingna platformieOnBackPressedDispatcher. - 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ą zwalniane. Została ona wydana z wewnętrznej gałęzi.
Poprawki błędów
- Od 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ą zwalniane. Została ona wydana z wewnętrznej gałęzi.
Nowe funkcje
- Dodaliśmy
ComponentActivity.setUpEdgeToEdge(), aby ułatwić konfigurację wyświetlacza 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ć metodyOnBackPressedDispatcherzamiast ją zastępować. (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ł, że fragmenty nieprawidłowo unieważniały elementy MenuHost i powodowały nieoczekiwane działanie innych menu w aktywności. (I9404e, b/244336571)
Inne zmiany
ActivityResultRegisterużywa teraz KotlinaRandomzamiast 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ą zwalniane. Opracowano na podstawie gałęzi wewnętrznej.
Aktualizacja zależności
- Z aktywności
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ą zwalniane. Została ona utworzona na podstawie wewnętrznej gałęzi.
Nowe funkcje
- Klasa
OnBackPressedCallbackzawiera teraz nowe wywołania zwrotne postępu przewidywanego przejścia wstecz, które obsługują rozpoczęcie gestu wstecz, postęp w trakcie gestu i anulowanie gestu wstecz. Oprócz tego zawiera poprzednie wywołanie zwrotnehandleOnBackPressed(), które jest wywoływane, gdy gest 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ą zwalniane. 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ą zwalniane. Wersja 1.7.1 zawiera te zatwierdzenia.
Poprawki błędów
- Wartość
ReportFullyDrawExecuternie jest już ujawniana podczas korzystania z funkcjiComponentActivityz parametremActivityScenario. (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ą zwalniane. 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. ComponentDialogimplementuje 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 oznaczeń zIntent, a nie tylko jednego.
Konwersja na Kotlin
Wiele klas aktywności zostało przekonwertowanych na język Kotlin. Wszystkie przekonwertowane zajęcia 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 API FullyDrawnReporter
ComponentActivity udostępnia teraz instancję FullyDrawnReporter, która umożliwia wielu komponentom zgłaszanie gotowości do interakcji. ComponentActivity poczeka, aż wszystkie komponenty zostaną ukończone, zanim wywoła reportFullyDrawn() w Twoim imieniu. 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 pomiarów czasu 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ą zwalniane. 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ą zwalniane. Wersja 1.7.0-beta02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Działanie i dodatkowe elementy używane przez kontrakty
PickVisualMediaiPickMultipleVisualMediajako rezerwa w przypadku niedostępnościMediaStore.ACTION_PICK_IMAGESsą 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ęć. To rozwiązanie jest nadal ograniczone 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ą zwalniane. Wersja 1.7.0-beta01 zawiera te zatwierdzenia.
Nowe funkcje
IntentSenderRequest.Builder.setFlags()umożliwia teraz ustawianie wielu oznaczeń zIntent, a nie tylko jednego. (Iac04c)
Poprawki błędów
- W przypadku
PickVisualMedia, gdy selektor zdjęć nie jest dostę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. W przypadku klas napisanych w Kotlinie jest to zmiana powodująca niezgodność na poziomie źródła – musisz teraz zastąpić właściwośćactivityResultRegistry, a nie implementować poprzedniej funkcjigetActivityResultRegistry(). (I0b00e)OnBackPressedDispatcherOwnerjest teraz napisany w języku Kotlin. W przypadku klas napisanych w Kotlinie jest to zmiana powodująca niezgodność na poziomie źródła – musisz teraz 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ą zwalniane. 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) jest niedostępny. InterfejsisPhotoPickerAvailable()API, który wykrywa tylko selektor zdjęć udostępniany przez system Android, został wycofany. Zalecamy używanie nowegoisPhotoPickerAvailable(Context)interfejsu 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ą zwalniane. Wersja 1.7.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
ComponentDialogimplementuje terazSavedStateRegistryOwneri ma dostęp do własnegoSavedStateRegistryoraz ustawiaSavedStateRegistryOwnerdla swojego ViewTree. Teraz można 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ę
ReportDrawn, która od razu 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 binarnego. (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ą zwalniane. 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ą zwalniane. Wersja 1.7.0-alpha01 zawiera te zatwierdzenia.
Interfejsy API FullyDrawnReporter
ComponentActivity udostępnia teraz instancję FullyDrawnReporter, która umożliwia wielu komponentom zgłaszanie gotowości do interakcji. ComponentActivity poczeka, aż wszystkie komponenty zostaną ukończone, zanim wywoła reportFullyDrawn() w Twoim imieniu. 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 pomiarów czasu uruchamiania, aby można było śledzić wydajność.
Dodaliśmy 2 interfejsy Activity Compose API, aby ułatwić korzystanie z FullyDrawnReporter w poszczególnych komponentach:
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ą zwalniane. Wersja 1.6.1 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązaliśmy problem z nieuruchamianiem kontraktu
PickMultipleVisualMediaActivity Result na urządzeniach z Androidem R w przypadku użycia wartości domyślnej dlamaxItems. (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ą zwalniane. Wersja 1.6.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.5.0
- Dodano
ActivityResultContracts.PickVisualMediaiActivityResultContracts.PickMultipleVisualMedia, aby zapewnić zgodną wstecznie umowę, 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 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ą zwalniane. Wersja 1.6.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
OnBackPressedDispatcherrejestruje terazOnBackInvokedCallbackwPRIORITY_DEFAULTzamiast wPRIORITY_OVERLAY. (I3901f)- W przypadku klas, które rozszerzają klasę
ComponentActivity, zawsze będą wywoływane oba wywołania zwrotneonMultiWindowModeChanged(). (Ic4d85) - Funkcja
ActivityResultRegistrynie będzie już zwracać wyniku do funkcjiActivityResultCallback, gdy wywołanie funkcjilaunchzgłosi błądException, a funkcja zwrotna została zarejestrowana bez funkcjiLifecycleOwner. (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
Activityzależy teraz 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ą zwalniane. Wersja 1.6.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Inicjowanie
OnBackPressedDispatchernie będzie już powodowaćClassVerificationErrorw przypadku korzystania z wersji pakietu SDK starszych niż 33. (Ic32e1) - Klasy, które zastępują wywołanie zwrotne
ComponentActivityonPictureInPictureModeChanged(), będą teraz zawsze wysyłać wywołania zwrotne. (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ą zwalniane. 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 wywołanie zwrotne zostało zarejestrowane 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 super. (Ie33c5, b/238057118)
Aktualizacja zależności
- W sekcji Aktywność
1.5.1: bibliotekaActivityzależy teraz od wersjiLifecycle2.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ą zwalniane. 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. - Zintegrowaliśmy
OnBackInvokedCallbackw Androidzie 13 w wersji beta 2 dla deweloperów 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ą zwalniane.
- 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ć zgodną wstecznie umowę, 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ą zwalniane.
- Uwaga: ta wersja będzie kompilowana tylko z pakietem 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ą zwalniane. Wersja 1.5.1 zawiera te zatwierdzenia.
Poprawki błędów
Funkcja
ActivityResultRegistrynie będzie już zwracać wyniku do funkcjiActivityResultCallback, gdy wywołanie funkcjilaunch()spowoduje zgłoszenie błęduException, a funkcja zwrotna została zarejestrowana bez funkcjiLifecycleOwner. (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ą zwalniane. Wersja 1.5.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.4.0
- ComponentDialog –
ComponentDialogto podklasaDialog, która zawieraOnBackPressedDispatcher, który zostanie wywołany, gdy zostanie naciśnięty systemowy przycisk Wstecz i okno dialogowe będzie widoczne. Co ważne, ta podklasa ustawia teżViewTreeOnBackPressedDispatcherOwner, co umożliwia widokom ogólny sposób pobierania prawidłowego dyspozytora, niezależnie od tego, czy znajduje się on wComponentActivity, czy 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ą Lifecycle2.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ą zwalniane. Wersja 1.5.0-beta01 zawiera te zatwierdzenia.
Aktualizacje zależności
- Aktywność zależy teraz od Lifecycle
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ą zwalniane. 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ą zwalniane. 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 podasz dodatkowe informacje, zainicjowane argumenty zostaną zignorowane. (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ą zwalniane. Wersja 1.5.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Możesz teraz przekazywać wartość
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ą zwalniane. 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ć dowolnemu komponentowi odbieranie zdarzeń zmiany trybu wielu okien. (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ą zwalniane. Wersja 1.5.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
ComponentActivityjest teraz zintegrowany z ViewModel CreationExtras, wprowadzonym w ramach Lifecycle2.5.0-alpha01. (Ie7e00, b/207012584)- Dodano
ComponentDialog, podklasęDialog, która zawieraOnBackPressedDispatcher, wywoływaną po naciśnięciu systemowego przycisku Wstecz, gdy okno dialogowe jest widoczne. Ważne jest, że ta podklasa ustawia teżViewTreeOnBackPressedDispatcherOwner, co umożliwia widokom ogólny sposób pobierania odpowiedniego dyspozytora, niezależnie od tego, czy znajduje się on wComponentActivityczy wComponentDialog. (I8a1bc) ComponentActivityimplementuje teraz nowy interfejsOnNewIntentProvider, aby umożliwić 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 klasy
ActivityResultContracts.CreateDocumentzostał wycofany i zastąpiony nowym konstruktorem, który przyjmuje konkretny typ MIME (np."image/png"), zgodnie z wymaganiami klasyIntent.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ą zwalniane. Wersja 1.4.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.3.0
- AndroidX
ComponentActivityimplementuje terazMenuHost. 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ć z elementemLifecycle, 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ą zwalniane. 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ą zwalniane. 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żywano 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ą zwalniane. Wersja 1.4.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Artefakt
activity-composezawiera teraz błąd lintowaniaLaunchDuringComposition, 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ć odpowiednią możliwość przyjmowania 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ą zwalniane. 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ątekIllegalStateExceptionpodczas próby wywołania funkcjilaunch()na urządzeniuActivityResultLauncher, które nie zostało zarejestrowane lub zostało wyrejestrowane. (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ą zwalniane. 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ą zwalniane. 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. - Kontrakt CaptureVideo – kontrakt
CaptureVideoActivityResultContractzastępuje wycofany już kontraktTakeVideoi 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ćPictureInPictureParamswraz ze zmianą pozycji widoku 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ą zwalniane. 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.
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 w stosunku do wersji 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ą zwalniane. Wersja 1.3.0-beta02 zawiera te zatwierdzenia.
Zaktualizowano activity-compose, aby zależało 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ą zwalniane. 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ą zwalniane. 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ą zwalniane. Wersja 1.3.0-alpha07 zawiera te zatwierdzenia.
Poprawki błędów
rememberLauncherForActivityResultzwraca teraz stabilne odwołanie do tej samejActivityResultLauncherinstancji, nawet jeśli umowa ulegnie zmianie z powodu ponownego skomponowania. (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ą zwalniane. Wersja 1.3.0-alpha06 zawiera te zmiany.
Zmiany w interfejsie API
- Nazwa interfejsu
registerForActivityResult()została zmieniona narememberLauncherForActivityResult(), aby lepiej wskazywać, że zwracany elementActivityResultLauncherjest zarządzanym obiektem, który jest zapamiętywany w Twoim imieniu. Próba wywołania funkcjiunregister, która zwraca wartośćActivityResultLauncher, spowoduje teraz błąd. (I2bb6d) LocalOnBackPressedDispatcherOwner.currentiLocalActivityResultRegistryOwner.currentzwracają teraz wartość dopuszczającą wartość null, aby lepiej określać, 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, jeśli aktywność jestSTOPPED, a następnie 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ą zwalniane. 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 dodatni wynik podczas korzystania z Fragmentu w wersji 1.3.1 lub nowszej. (I54da1, b/182388985) - Od wersji 1.2.2:
ComponentActivitynie powoduje jużClassNotFoundExceptionpodczas uruchamianiaIntentzActivityResultContract, który był wcześniej przechowywany jako dodatkowy w innymIntent. (Ieff05, b/182906230)
Aktualizacje zależności
- Od Activity 1.2.2: aktywność 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ą zwalniane. 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:ActivityResultRegistryteraz zapewnia, że trwające żądanialaunch()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 była używana wcześniej ustawiona funkcja 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ą zwalniane. Wersja 1.3.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
- Dostępna jest teraz funkcja
registerForActivityResulttypu „composable”, która umożliwia uzyskiwanie wyników z aktywności w funkcjach typu „composable”. (Ia7851, b/172690553)
Zmiany w interfejsie API
LocalOnBackPressedDispatcherOwnerma teraz funkcjeprovides, które można wykorzystywać wCompositionLocalProvider, zastępując interfejsasProvidableCompositionLocal()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ą zwalniane. 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 Compose powinni korzystać z wersji1.3.0-alpha02lub nowszej. (b/179911234)
Zmiany w interfejsie API
- Interfejs
BackHandlerAPI umożliwia przechwytywanie przez komponent Composable 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ą zwalniane. 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 informował o konieczności użycia fragmentu
1.3.0podczas korzystania z wersji snapshot, alpha, beta lub RC nowszej wersji biblioteki Fragments. (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
InvalidFragmentVersionForActivityResultlint check, który powodował fałszywie pozytywny wynik podczas korzystania z biblioteki Fragment w wersji 1.3.1 lub nowszej. (I54da1, b/182388985) ComponentActivityunika terazClassNotFoundExceptionpodczas uruchamianiaIntentzActivityResultContract, który był wcześniej traktowany jako dodatkowy w innymIntent. (Ieff05, b/182906230)
Aktualizacje zależności
- Aktywność zależy teraz od Lifecycle
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.
Główne zmiany od wersji 1.1.0
- Interfejsy Activity Result API:
ComponentActivityteraz udostępniająActivityResultRegistry, 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 1 instancjiOnContextAvailableListener, która będzie otrzymywać wywołanie zwrotne przed podstawową instancjąActivity.onCreate().- Funkcja zawieszająca w Kotlinie
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 nowszym. Wszyscy detektorzy dodani do podklasAppCompatActivitybędą uruchamiani po tym detektorze.
- Funkcja zawieszająca w Kotlinie
ViewTreePomoc: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 eliminuje awarię podczas wywoływania tej metody bez odpowiedniego uprawnienia systemowego na urządzeniach z interfejsem API 19. Dziękujemy Simonowi Schillerowi! (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()za pomocą funkcjiLifecycleOwner, której parametrLifecycleosiągnął 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
ComponentActivityobsługuje terazContextAware, co umożliwia dodanie co najmniej 1 instancjiOnContextAvailableListener, która otrzyma wywołanie zwrotne przed podstawową instancjąActivity.onCreate(). (b/161390636)- Rozszerzenie Kotlin wstrzymujące
withContextAvailable()umożliwia uruchomienie bloku niewstrzymują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 Kotlin wstrzymujące
Poprawki błędów
- Rozwiązaliśmy problem z
ActivityResultFragmentVersionDetectorsprawdzaniem Lint, który powodował błędy 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
- Dodano 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 aplikacji 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 dokonać dekompozycji klasy
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 klasieActivityResultRegistryzostała zmieniona naonLaunch(). (b/157496491) OpenMultipleDocumentszwraca teraz pustą listę zamiastnulldo zarejestrowanego wywołania zwrotnego, jeśli nie zostanie zwrócony żaden wynik. (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ę
ViewTreeViewModelStoreOwnerz Lifecycle2.3.0-alpha03iViewTreeSavedStateRegistryOwnerz SavedState1.1.0-alpha01podczas używaniaViewwComponentActivity. (aosp/1297993, aosp/1300264)
Zmiany w interfejsie API
TakePictureKontrakt zwraca terazboolean, co oznacza 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()wActivityResultLauncherzostał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 działaniu. (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ć metodę 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 Activity Result API obsługują teraz uruchamianie aktywności w celu uzyskania wyniku z opcjonalnym
ActivityOptionsCompat. (b/151860054)
Zmiany w interfejsie API
TakePictureumowa przyjmuje terazUrijako dane wejściowe miejsce, w którym ma być przechowywany obraz. 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(), aunregisterResultCallback()wActivityResultRegistryzostała usunięta. (aosp/1267621) - Metoda
createIntent()ActivityResultContactprzyjmuje 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 w przypadku umówRequestPermissioniRequestPermissions, 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óre występowało 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, gdy wywołanie zwrotne zostanie ponownie zarejestrowane. (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. Zapewnia większe bezpieczeństwo typów dziękiActivityResultContracti udostępnia 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
ViewTreeLifecycleOwner.get(View)API 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
- Rozwiązaliśmy problem, który został wprowadzony 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 zostaną opublikowane bez zmian od 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 zawarte 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 Lifecycle
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 zawarte 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 zawarte w tej wersji znajdziesz tutaj.
Nowe funkcje
activityzależy teraz od komponentu Cykl życia2.2.0-alpha02. (aosp/1007817)activity-ktxdodano zależność odlifecycle-runtime-ktx. Nie musisz już dodawać jej do zależności podczas korzystania zactivity-ktxani bibliotek, które są od niej zależne (np.fragment-ktx). (aosp/987162)activity-ktx
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 zawarte w tej wersji znajdziesz tutaj.
Główne funkcje wersji 1.0.0
- ComponentActivity:
ComponentActivityto nowa klasa bazowa dlaFragmentActivityw fragmencie1.1.0i w konsekwencji dlaAppCompatActivityw 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 funkcji
onBackPressed()możesz teraz zarejestrowaćOnBackPressedCallbackw dowolnymLifecycleOwner(np. we fragmencie), aby przechwytywać zdarzenia systemowego przycisku Wstecz. Doactivity-ktxdodano lambdę z wersją odbiorcyaddCallback. Więcej informacji znajdziesz w dokumentacji dotyczącej zapewniania niestandardowego przechodzenia wstecz. - Wycofanie onRetainCustomNonConfigurationInstance: interfejs API
onRetainCustomNonConfigurationInstance()i powiązany z nim interfejs APIgetLastCustomNonConfigurationInstance()zostały wycofane. Do przechowywania stanu niekonfiguracyjnego zdecydowanie zalecamy używanie ViewModeli, 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 zostaną opublikowane bez zmian od 1.0.0-beta01. Zatwierdzenia zawarte 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 zostaną opublikowane bez zmian od 1.0.0-alpha08. Zatwierdzenia zawarte 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 zawarte 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()OnBackPressedCallbacksą już ostateczne. b/131416833 - Metoda
remove()wOnBackPressedCallbackjest teraz ostateczna. aosp/952720 OnBackPressedDispatcherma teraz konstruktory publiczne, które umożliwiają tworzenie własnych instancji na potrzeby testowania itp. aosp/953431onBackPressed()w przypadkuComponentActivityjest teraz wyraźnie oznaczony jako@MainThreadaosp/952721
Poprawki błędów
- Rozwiązaliśmy problem z
ConcurrentModificationExceptionpodczas wywoływaniaremove()z metodyhandleOnBackPressed()obiektuOnBackPressedCalbackdodanego za pomocąLifecycleOwner. 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 zawarte w tej wersji znajdziesz tutaj.
Zmiany w interfejsie API
W tej wersji wprowadziliśmy istotne zmiany w obsłudze onBackPressed(). Więcej informacji znajdziesz w zaktualizowanej dokumentacji dotyczącej niestandardowego powrotu.
- 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 o zakresie odbiornika dlaaddCallback, które akceptuje wyrażenie lambda implementującehandleOnBackPressed()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 zawarte w tej wersji znajdziesz tutaj.
Zmiany w interfejsie API
- Klasa ComponentActivity zawiera teraz drugi konstruktor, który przyjmuje
@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 zostały opublikowane. Pełną listę zmian
uwzględnionych w tej wersji znajdziesz tutaj.
Nowe funkcje
- Wyszukiwania adnotacji
@ContentViewsą teraz buforowane (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 zostały opublikowane.
Nowe funkcje
- Dodano obsługę adnotacji klasy
@ContentView, która umożliwia wskazanie, który plik XML układu powinien zostać rozwinięty jako alternatywa dla użyciasetContentView(). (aosp/837619)
Zmiany w interfejsie API
- Dodaliśmy informację, że
getViewModelStore()nie należy zastępować i w przyszłej wersji zostanie oznaczony jako ostateczny. 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 rozwiązuje teraz problem z platformą Androida, który powodował wyciek ostatniego aktywnego widoku w InputMethodManager [b/37122102].
Wersja 1.0.0-alpha02
3 grudnia 2018 r.
Zmiany w interfejsie API
- Dodano informację, że
getLifecycle()nie należy zastępować i w przyszłej wersji zostanie ustawione jakofinal. 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ąaddOnBackPressedCallback, aby otrzymywaćonBackPressed()wywołania zwrotne bez konieczności zastępowania metody w działaniu. - Dodaliśmy nowy delegat właściwości Kotlin
by viewModels()do pobieraniaViewModelelementówComponentActivity. - Oczekujące zdarzenia wejściowe (np. kliknięcia) są teraz anulowane w
onStop().
Zmiany w interfejsie API
- Implementacja funkcji
LifecycleOwneriViewModelStoreOwnerzostała przeniesiona zFragmentActivitydoComponentActivity. - Właściwość
onRetainCustomNonConfigurationInstancezostała wycofana. UżywajViewModeldo przechowywania obiektów, które muszą przetrwać zmiany konfiguracji.