Активность
Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
30 июля 2025 г. | 1.10.1 | 1.11.0-rc01 | - | 1.12.0-альфа05 |
Объявление зависимостей
Чтобы добавить зависимость от Activity, необходимо добавить репозиторий Google Maven в свой проект. Подробнее см. в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle
вашего приложения или модуля:
классный
dependencies { def activity_version = "1.10.1" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
Котлин
dependencies { val activity_version = "1.10.1" // Java language implementation implementation("androidx.activity:activity:$activity_version") // Kotlin implementation("androidx.activity:activity-ktx:$activity_version") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с уже существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав на кнопку со звёздочкой.
Более подробную информацию см. в документации по системе отслеживания проблем .
Версия 1.12
Версия 1.12.0-альфа05
30 июля 2025 г.
Выпущены androidx.activity:activity:1.12.0-alpha05
, androidx.activity:activity-compose:1.12.0-alpha05
и androidx.activity:activity-ktx:1.12.0-alpha05
. Версия 1.12.0-alpha05 содержит эти коммиты .
Обновление зависимостей
- Активность теперь зависит от Navigation Event
1.0.0-alpha05
.
Версия 1.12.0-альфа04
2 июля 2025 г.
Выпущены androidx.activity:activity:1.12.0-alpha04
, androidx.activity:activity-compose:1.12.0-alpha04
и androidx.activity:activity-ktx:1.12.0-alpha04
. Версия 1.12.0-alpha04 содержит эти коммиты .
Изменения зависимости
- Активность теперь зависит от NavigationEvent Alpha04
Версия 1.12.0-альфа03
18 июня 2025 г.
Выпущены androidx.activity:activity:1.12.0-alpha03
, androidx.activity:activity-compose:1.12.0-alpha03
и androidx.activity:activity-ktx:1.12.0-alpha03
. Версия 1.12.0-alpha03 содержит эти коммиты .
Исправления ошибок
OnBackPressedDispatcher
иNavigationEventDispatcher
теперь инициализируются лениво вComponentActivity
. ( I710e6 )Исправлены проблемы с
OnBackPressedDistpatcher
, которые вызывали следующее:- Только последний диспетчер
OnBackPressedCallback
был добавлен к уведомлению о своем включенном состоянии ( b/418715930 ). -
OnBackPressedDispatcher
удаляет неправильный обратный вызов при использовании функцииaddCallback
, которая принимает жизненный цикл. ( b/422714753 ) -
OnBackPressedDispatcher.remove()
не удаляет все экземпляры зарегистрированногоOnBackPressedCallback
. ( b/423024414 )
- Только последний диспетчер
Версия 1.12.0-альфа02
4 июня 2025 г.
Выпущены androidx.activity:activity:1.12.0-alpha02
, androidx.activity:activity-compose:1.12.0-alpha02
и androidx.activity:activity-ktx:1.12.0-alpha02
. Версия 1.12.0-alpha02 содержит эти коммиты .
Исправления ошибок
- Начиная с NavigationEvent
1.0.0-alpha02
: исправлено исключениеConcurrentModificationException
, которое могло возникнуть при вызовеNavigationEventCallback.remove()
из-за одновременного изменения внутреннего списка закрываемых объектов. ( I63066 )
Версия 1.12.0-альфа01
20 мая 2025 г.
Выпущены androidx.activity:activity:1.12.0-alpha01
, androidx.activity:activity-compose:1.12.0-alpha01
и androidx.activity:activity-ktx:1.12.0-alpha01
. Версия 1.12.0-alpha01 содержит эти коммиты .
Новые функции
-
ComponentActivity
иComponentDialog
интегрированы с NavigationEvent1.0.0-alpha01
через APINavigationEventDispatcherOwner
. Теперь вы можете получитьNavigationEventDispatcher
изComponentActivity
через полеnavigationEventDispatcher
. ПосколькуOnBackPressedDispatcher
был переписан на основе новой библиотеки, все предыдущие варианты использования должны работать корректно. В дальнейшем вам следует использоватьNavigationEventDispatcher
иNavigationEventCallback
. ( Ib8eed , I6cc44 , Ib7724 , I9a0f7 , b/412597031 , b/415028038 , b/412596729 , b/412597140 , b/412596012 )
Версия 1.11
Версия 1.11.0-rc01
23 апреля 2025 г.
Выпущены androidx.activity:activity:1.11.0-rc01
, androidx.activity:activity-compose:1.11.0-rc01
и androidx.activity:activity-ktx:1.11.0-rc01
. Версия 1.11.0-rc01 содержит эти коммиты .
Версия 1.11.0-beta01
9 апреля 2025 г.
Выпущены androidx.activity:activity:1.11.0-beta01
, androidx.activity:activity-compose:1.11.0-beta01
и androidx.activity:activity-ktx:1.11.0-beta01
. Версия 1.11.0-beta01 содержит эти коммиты .
Версия 1.11.0-альфа02
26 марта 2025 г.
Выпущены androidx.activity:activity:1.11.0-alpha02
, androidx.activity:activity-compose:1.11.0-alpha02
и androidx.activity:activity-ktx:1.11.0-alpha02
. Версия 1.11.0-alpha02 содержит эти коммиты .
Изменения API
- Интегрированы новые
EDGE_NONE
иframeTimeMillis
из Android 16 Beta03 вBackEventCompat
, предоставляемый функциямиhandleOnBackStarted
иhandleOnBackProgressed
классаOnBackPressedCallback
.
Обновления зависимостей
- Activity теперь скомпилирован с API 36. ( I510e8 , b/301910674 )
Версия 1.11.0-альфа01
12 марта 2025 г.
Выпущены androidx.activity:activity:1.11.0-alpha01
, androidx.activity:activity-compose:1.11.0-alpha01
и androidx.activity:activity-ktx:1.11.0-alpha01
. Версия 1.11.0-alpha01 содержит эти коммиты .
Новые функции
- Добавлен API
MediaCapabilities
вPickVisualMediaRequest
, позволяющий приложениям указывать свои медиавозможности, такие как поддерживаемые типы HDR. ( Ic3ee7 )
Версия 1.10
Версия 1.10.1
26 февраля 2025 г.
Выпущены androidx.activity:activity:1.10.1
, androidx.activity:activity-compose:1.10.1
и androidx.activity:activity-ktx:1.10.1
. Версия 1.10.1 содержит эти коммиты .
Исправления ошибок
-
ViewTree
OnBackPressedDispatcherOwners
иFullyDrawnReporterOwners
теперь можно разрешать через непересекающиеся родительские элементы представления, например,ViewOverlay
. Подробнее о непересекающихся родительских элементах представления см. в примечаниях к выпуску ядра или в документации поViewTree.setViewTreeDisjointParent
. ( Ie7750 ).
Версия 1.10.0
15 января 2025 г.
Выпущены androidx.activity:activity:1.10.0
, androidx.activity:activity-compose:1.10.0
и androidx.activity:activity-ktx:1.10.0
. Версия 1.10.0 содержит эти коммиты .
Важные изменения с версии 1.9.0
-
PhotoPicker
теперь позволяет выбирать изображения по порядку и выбирать, какая вкладка (альбомы или изображения) должна быть видна изначально. - Контракты
PickVisualMedia
иPickMultipleVisualMedia
Activity Result, которые запускают средство выбора фотографий, больше не делегируют управление напрямую сервисам Google Play, если системное средство выбора фотографий недоступно, а используют общедоступное действиеACTION_SYSTEM_FALLBACK_PICK_IMAGES
и связанные с ним дополнения для предоставления единообразного опыта использования средства выбора фотографий для OEM-производителей и системных приложений в качестве запасного варианта. - Новая локальная композиция
LocalActivity
, которая предоставляетActivity
для текущей области действия, устраняя необходимость для разработчиков получатьActivity
изLocalContext
.
Версия 1.10.0-rc01
11 декабря 2024 г.
Выпущены androidx.activity:activity:1.10.0-rc01
, androidx.activity:activity-compose:1.10.0-rc01
и androidx.activity:activity-ktx:1.10.0-rc01
. Версия 1.10.0-rc01 содержит эти коммиты .
Исправления ошибок
- Исправлена ошибка, из-за которой изменение состояния «включено» при активном
PredictiveBackHandler
приводило к немедленному прерыванию обратного вызова. Теперь текущий обратный вызов будет завершен независимо от изменения состояния «включено». ( Ib8719 )
Версия 1.10.0-beta01
13 ноября 2024 г.
androidx.activity:activity:1.10.0-beta01
, androidx.activity:activity-compose:1.10.0-beta01
и androidx.activity:activity-ktx:1.10.0-beta01
выпущены без изменений с момента последней альфа-версии. Версия 1.10.0-beta01 содержит следующие коммиты .
Версия 1.10.0-альфа03
30 октября 2024 г.
Выпущены androidx.activity:activity:1.10.0-alpha03
, androidx.activity:activity-compose:1.10.0-alpha03
и androidx.activity:activity-ktx:1.10.0-alpha03
. Версия 1.10.0-alpha03 содержит эти коммиты .
Изменения API
- Добавлена новая локальная композиция
LocalActivity
, которая предоставляетActivity
для текущей области действия, устраняя необходимость в полученииActivity
изLocalContext
. Также добавлено новое правило линтинга, которое проверяет, некорректно лиLocalContext
преобразуется вActivity
. ( I7746a , b/283009666 )
Исправления ошибок
- Начиная с Activity
1.9.3
:PredictiveBackHandler
больше не будет активировать свой обратный вызов после отключения обработчика. Это исправит проблему, из-за которойNavHost
из Navigation Compose вызывал исключениеIndexOutOfBoundsException
. ( I3f75e , b/365027664 , b/340202286 )
Обновление зависимостей
- Activity Compose теперь зависит от Compose Runtime 1.7.0 ( I7746a , b/283009666 )
Версия 1.10.0-альфа02
4 сентября 2024 г.
Выпущены androidx.activity:activity:1.10.0-alpha02
, androidx.activity:activity-compose:1.10.0-alpha02
и androidx.activity:activity-ktx:1.10.0-alpha02
. Версия 1.10.0-alpha02 содержит эти коммиты .
Изменения поведения
- Контракты
PickVisualMedia
иPickMultipleVisualMedia
Activity Result, запускающие функцию выбора фотографий, больше не делегируют управление сервисам Google Play напрямую, если системный инструмент выбора фотографий недоступен. Вместо этого используется публичное действиеACTION_SYSTEM_FALLBACK_PICK_IMAGES
и связанные с ним дополнительные функции для обеспечения единообразного использования функции выбора фотографий производителями оборудования и системными приложениями в качестве резервного варианта. Это не должно повлиять на пользовательский интерфейс устройств с последней версией сервисов Google Play. ( I3513d )
Исправления ошибок
- Удалено ручное описание доступа к новым API платформы, поскольку это происходит автоматически посредством моделирования API при использовании R8 с AGP 7.3 или более поздней версии (например, R8 версии 3.3) и для всех сборок с использованием AGP 8.1 или более поздней версии (например, D8 версии 8.1). Клиентам, не использующим AGP, рекомендуется обновиться до D8 версии 8.1 или более поздней. Подробнее см. в этой статье ( I9496c , b/345472586 ).
- Начиная с Activity
1.9.2
: исправлена проблема, из-за которой API Activity ComposePredictiveBackHandler
продолжал обрабатывать системный жест «назад» на кадре, в котором он был отключен. Это могло привести к тому, что библиотеки, такие как Navigation Compose, обрабатывали жест «назад» даже при пустом стеке «назад», выдавая исключениеIndexOutOfBoundsException
. ( Ie3301 , b/340202286 ) - Из Activity
1.9.1
: Исправлена проблема сPredictiveBackHandler
, из-за которой после выполнения системного возврата попытка выполнитьonBackPressed
изOnBackPressedDispatcher
приводила к ошибке. ( I5f1f8 )
Версия 1.10.0-альфа01
26 июня 2024 г.
Выпущены androidx.activity:activity:1.10.0-alpha01
, androidx.activity:activity-compose:1.10.0-alpha01
и androidx.activity:activity-ktx:1.10.0-alpha01
. Эта версия разрабатывается во внутренней ветке.
Новые функции
- Добавлена поддержка новых функций
PhotoPicker
, представленных в Android V, включая возможность выбирать изображения по порядку и выбирать, какая вкладка (альбомы или изображения) должна быть изначально видна.
Версия 1.9
Версия 1.9.3
16 октября 2024 г.
Выпущены androidx.activity:activity:1.9.3
, androidx.activity:activity-compose:1.9.3
и androidx.activity:activity-ktx:1.9.3
. Версия 1.9.3 содержит эти коммиты .
Исправления ошибок
-
PredictiveBackHandler
больше не будет активировать свой обратный вызов после отключения обработчика. Это исправит проблему, из-за которойNavHost
из Navigation Compose вызывал исключениеIndexOutOfBoundsException
. ( I3f75e , b/340202286 )
Версия 1.9.2
4 сентября 2024 г.
Выпущены androidx.activity:activity:1.9.2
, androidx.activity:activity-compose:1.9.2
и androidx.activity:activity-ktx:1.9.2
. Версия 1.9.2 содержит следующие lthcocommits .
Исправления ошибок
- Исправлена ошибка, из-за которой API Activity Compose
PredictiveBackHandler
продолжал обрабатывать системный жест «Назад» на кадре, в котором он был отключен. Это могло привести к тому, что библиотеки, такие как Navigation Compose, обрабатывали жест «Назад» даже при пустом стеке «Назад», выдавая исключениеIndexOutOfBoundsException
. ( Ie3301 , b/340202286 )
Версия 1.9.1
24 июля 2024 г.
Выпущены androidx.activity:activity:1.9.1
, androidx.activity:activity-compose:1.9.1
и androidx.activity:activity-ktx:1.9.1
. Версия 1.9.1 содержит эти коммиты .
Исправления ошибок
- Исправлена проблема с
PredictiveBackHandler
, из-за которой после выполнения системного возврата попытка выполнитьonBackPressed
изOnBackPressedDispatcher
приводила к ошибке. ( I5f1f8 )
Версия 1.9.0
17 апреля 2024 г.
Выпущены androidx.activity:activity:1.9.0
, androidx.activity:activity-compose:1.9.0
и androidx.activity:activity-ktx:1.9.0
. Версия 1.9.0 содержит эти коммиты .
Важные изменения с версии 1.8.0
-
ComponentActivity
теперь реализуетOnUserLeaveHintProvider
, чтобы разрешить компонентам выполнять обратные вызовы для событийonUserLeaveHint
. - API
OnBackPressedCallback
,BackHandler
иPredictiveBackHandler
теперь выдают предупреждения при вызовеonBackPressedDispatcher.onBackPressed()
при обработке обратных событий, так как это всегда приводит к прерыванию предиктивной обратной анимации . Подробнее см. в руководстве по лучшим практикам . - Остальные API Activity были переписаны на Kotlin, а все расширения, ранее доступные в
activity-ktx
были перенесены вactivity
.activity-ktx
теперь полностью пуст.- В рамках переноса
ActivityResultLauncher
на Kotlin методgetContract
теперь является абстрактным свойством Kotlin. Это изменение совместимо с бинарным кодом, но нарушает исходный код, если ваша реализацияActivityResultLauncher
написана на Kotlin.
- В рамках переноса
Версия 1.9.0-rc01
3 апреля 2024 г.
Выпущены androidx.activity:activity:1.9.0-rc01
, androidx.activity:activity-compose:1.9.0-rc01
и androidx.activity:activity-ktx:1.9.0-rc01
. Версия 1.9.0-rc01 содержит эти коммиты .
Обновление зависимости
- Активность теперь зависит от Profile Installer 1.3.1 .
Версия 1.9.0-beta01
20 марта 2024 г.
Выпущены androidx.activity:activity:1.9.0-beta01
, androidx.activity:activity-compose:1.9.0-beta01
и androidx.activity:activity-ktx:1.9.0-beta01
. Версия 1.9.0-beta01 содержит эти коммиты .
Исправления ошибок
- Исправлено снижение производительности при запуске Activity, появившееся в Activity
1.9.0-alpha02
и вызванное вызовомOnBackPressedDispatcher
в процессе создания Activity. ( Ie75e3 )
Версия 1.9.0-альфа03
7 февраля 2024 г.
Выпущены androidx.activity:activity:1.9.0-alpha03
, androidx.activity:activity-compose:1.9.0-alpha03
и androidx.activity:activity-ktx:1.9.0-alpha03
. Версия 1.9.0-alpha03 содержит эти коммиты.
Предупреждение о ворсе
- API
OnBackPressedCallback
,BackHandler
иPredictiveBackHandler
теперь выдают предупреждения при вызовеonBackPressedDispatcher.onBackPressed()
при обработке обратных событий, поскольку это всегда приводит к прерыванию предиктивной анимации обратных событий . Подробнее см. в руководстве по лучшим практикам . ( 1e4222 , 2c950d , b/287505200 )
Исправления ошибок
- Если событие «назад» отправляется из системы, запущенной во время уже выполняющегося прогнозируемого жеста «назад», то текущий выполняющийся прогнозируемый жест «назад» отменяется, а новое событие «назад» вступает во владение, чтобы начать новый прогнозируемый жест «назад». ( I3482e )
- Исправлен сбой при первом обращении к
onBackPressedDispatcher
изComponentActivity
из фонового потока. Теперь доступ кonBackPressedDispatcher
безопасен в любом потоке. ( I79955 )
Версия 1.9.0-альфа02
24 января 2024 г.
Выпущены androidx.activity:activity:1.9.0-alpha02
, androidx.activity:activity-compose:1.9.0-alpha02
и androidx.activity:activity-ktx:1.9.0-alpha02
. Версия 1.9.0-alpha02 содержит эти коммиты.
Конвертации Kotlin
-
ActivityResultRegistry
переписан на Kotlin. Это гарантирует, что возможность значения NULL для дженериков в контракте, переданном вregister
будет корректно передана в возвращаемый вамActivityResultLauncher
. ( I121f0 ) -
ActivityResult
переписан на Kotlin. РасширенияActivityResult
Kotlin, поддерживающие деструктуризацию в поляresultCode
иdata
, перенесены изactivity-ktx
вactivity
. ( I0565a ) - Расширения Kotlin
by viewModels()
дляComponentActivity
иtrackPipAnimationHintView
перенесены изactivity-ktx
вactivity
. Артефактactivity-ktx
теперь полностью пуст. ( I0a444 )
Исправления ошибок
- API
enableEdgeToEdge
теперь рисует вокруг любых вырезов на дисплее. ( a3644b , b/311173461 ) - Начиная с Activity
1.8.2
: исправлено дополнительное значение, передаваемое в контракт действия «Выбор фотографий»ACTION_SYSTEM_FALLBACK_PICK_IMAGES
, теперь оно корректно передает ключEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX
вместо использования дополнительного значения с ключом"com.google.android.gms.provider.extra.PICK_IMAGES_MAX"
. Если вы являетесь OEM-производителем, реализующим системный резервный режим выбора фотографий, настоятельно рекомендуется поддерживать оба дополнительных значения для обеспечения максимальной совместимости. ( I96a00 )
Версия 1.9.0-альфа01
29 ноября 2023 г.
Выпущены androidx.activity:activity:1.9.0-alpha01
, androidx.activity:activity-compose:1.9.0-alpha01
и androidx.activity:activity-ktx:1.9.0-alpha01
. Версия 1.9.0-alpha01 содержит эти коммиты.
Новые функции
-
ComponentActivity
теперь реализуетOnUserLeaveHintProvider
, чтобы разрешить компонентам выполнять обратные вызовы для событийonUserLeaveHint
. ( I54892 )
Изменения API
-
ComponentActivity
был переписан на Kotlin. ( I14f31 ) -
ActivityResultCaller
был переписан на Kotlin. ( Ib02e4 ) -
ActivityResultLauncher
был переписан на Kotlin. В рамках этого преобразования методgetContract
теперь является абстрактным свойством Kotlin. Это изменение совместимо с бинарным кодом, но нарушает исходный код, если ваша реализацияActivityResultLauncher
написана на Kotlin. ( Id4615 ) -
PickVisualMediaRequest
теперь имеет тот же минимальный уровень API 19, что и контрактPickVisualMedia
Activity Result. ( Id6e21 )
Обновление зависимостей
- Активность теперь зависит от Core
1.13.0-alpha01
. ( I14f31 )
Версия 1.8
Версия 1.8.2
13 декабря 2023 г.
Выпущены androidx.activity:activity:1.8.2
, androidx.activity:activity-compose:1.8.2
и androidx.activity:activity-ktx:1.8.2
. Версия 1.8.2 содержит эти коммиты.
Исправления ошибок
- Исправлен дополнительный параметр, передаваемый в контракт действия «Фотовыбор»
ACTION_SYSTEM_FALLBACK_PICK_IMAGES
, для корректной передачи ключаEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX
вместо использования дополнительного параметра с ключом"com.google.android.gms.provider.extra.PICK_IMAGES_MAX"
. Если вы являетесь OEM-производителем, реализующим системный резервный фотовыбор, настоятельно рекомендуется поддерживать оба дополнительных параметра для обеспечения максимальной совместимости. ( I96a00 )
Версия 1.8.1
15 ноября 2023 г.
Выпущены androidx.activity:activity:1.8.1
, androidx.activity:activity-compose:1.8.1
и androidx.activity:activity-ktx:1.8.1
. Версия 1.8.1 содержит эти коммиты.
Исправления ошибок
-
OnBackPressedDispatcher
теперь продолжает отправлять запросы на правильныйOnBackPressedCallback
даже после добавления новогоOnBackPressedCallback
во время обработки жеста «назад». ( Id0ff6 )
Версия 1.8.0
4 октября 2023 г.
Выпущены androidx.activity:activity:1.8.0
, androidx.activity:activity-compose:1.8.0
и androidx.activity:activity-ktx:1.8.0
. Версия 1.8.0 содержит эти коммиты.
Важные изменения с версии 1.7.0
- Предиктивный возврат —
OnBackPressedCallback
теперь предлагает новые предиктивные обратные вызовы для обработки начала жеста «назад», хода выполнения жеста и его отмены, в дополнение к ранее существовавшему обратному вызовуhandleOnBackPressed()
действовавшему при завершении жеста «назад». Это также входит в составной объектPredictiveBackHandler
для обработки событий предиктивного возврата в Activity Compose. Он предоставляет поток объектов BackEventCompat, которые необходимо собрать в предоставленном вами лямб-объекте приостановки:
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()
теперь устарел и используется API для обработки обратных событий. Разработчикам теперь следует использовать OnBackPressedDispatcher
вместо переопределения этого метода.
- EdgeToEdge — добавлен
ComponentActivity.enableEdgeToEdge()
для простой настройки отображения «от края до края» с сохранением обратной совместимости.
Версия 1.8.0-rc01
20 сентября 2023 г.
Выпущены androidx.activity:activity:1.8.0-rc01
, androidx.activity:activity-compose:1.8.0-rc01
и androidx.activity:activity-ktx:1.8.0-rc01
. Версия 1.8.0-rc01 содержит эти коммиты.
Версия 1.8.0-beta01
6 сентября 2023 г.
Выпущены androidx.activity:activity:1.8.0-beta01
, androidx.activity:activity-compose:1.8.0-beta01
и androidx.activity:activity-ktx:1.8.0-beta01
. Версия 1.8.0-beta01 содержит эти коммиты.
Улучшение документации
- Улучшена документация
BackEventCompat
. ( aosp/2722254 )
Версия 1.8.0-альфа07
23 августа 2023 г.
Выпущены androidx.activity:activity:1.8.0-alpha07
, androidx.activity:activity-compose:1.8.0-alpha07
и androidx.activity:activity-ktx:1.8.0-alpha07
. Версия 1.8.0-alpha07 содержит эти коммиты.
Новые функции
Activity Compose добавил новый компонуемый объект
PredictiveBackHandler
для обработки событий предиктивного жеста «Назад». Он предоставляетFlow
объектовBackEventCompat
, которые необходимо собрать в предоставляемом вами лямб-объекте приостановки: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 } }
Он также поставляется с предупреждением времени компиляции через правило lint, чтобы гарантировать, что
Flow
вызываетcollect()
. ( Id2773 , b/294884345 )onBackPressedDispatcher
вComponentActivity
теперь инициализируется лениво, поэтому он создается только при необходимости. ( I0bf8e )
Исправления ошибок
-
ComponentActivity
больше не будет отображать NPE на Android 13, если он получает обратный вызовonBackPressed()
, а Activity уже былаDESTROYED
. ( Idb055 , b/291869278 ) - Удалены случаи использования экспериментального API
isAtLeastU()
( Ie9117 , b/289269026 )
Версия 1.8.0-альфа06
21 июня 2023 г.
Выпущены androidx.activity:activity:1.8.0-alpha06
, androidx.activity:activity-compose:1.8.0-alpha06
и androidx.activity:activity-ktx:1.8.0-alpha06
. Версия 1.8.0-alpha06 содержит эти коммиты.
Новые функции
-
OnBackPressedDispatcher
теперь корректно отменяет любые обратные вызовы, удаляемые во время предиктивного жеста «Назад». ( I3f90f )
Изменения API
- При передаче
SystemBarStyle.auto
в APIenableEdgeToEdge
теперь можно переопределить лямбда-параметрdetectDarkMode
, чтобы предоставить пользовательскую логику для обнаружения ночного режима. ( aosp/2546393 , b/278263793 )
Версия 1.8.0-альфа05
7 июня 2023 г.
Выпущены androidx.activity:activity:1.8.0-alpha05
, androidx.activity:activity-compose:1.8.0-alpha05
и androidx.activity:activity-ktx:1.8.0-alpha05
. Эта версия разрабатывается во внутренней ветке.
Изменения API
- Activity теперь предоставляет класс
BackEventCompat
, который служит обратно совместимой версиейBackEvent
, отделенной от фреймворкового классаBackEvent
. - Критическое изменение: методы
handleOnBackStarted
иhandleOnBackProgressed
объектаOnBackPressedCallback
теперь получают экземплярandroidx.activity.BackEventCompat
вместо фреймворкового классаandroid.window.BackEvent
. Аналогичные API@VisibleForTesting
дляOnBackPressedDispatcher
также были обновлены. - Конструктор
OnBackPressedDispatcher
теперь принимает необязательный экземплярConsumer<Boolean>
, который позволяет владельцам диспетчера получать обратный вызов всякий раз, когда количество включенных обратных вызовов изменяется с нуля на ненулевое значение или наоборот.
Исправления ошибок
- Из задания
1.7.2
: исправление сбояReportDrawn
при выходе за пределы экрана до вызоваreport
. ( Ic46f1 , b/260506820 )
Версия 1.8.0-альфа04
10 мая 2023 г.
Выпущены androidx.activity:activity:1.8.0-alpha04
, androidx.activity:activity-compose:1.8.0-alpha04
и androidx.activity:activity-ktx:1.8.0-alpha04
. Они были выпущены из внутренней ветки.
Исправления ошибок
- Начиная с Activity 1.7.1 : -
ReportFullyDrawExecuter
больше не дает утечек при использованииComponentActivity
сActivityScenario
. ( Id2ff2 , b/277434271 )
Версия 1.8.0-альфа03
12 апреля 2023 г.
Выпущены androidx.activity:activity:1.8.0-alpha03
, androidx.activity:activity-compose:1.8.0-alpha03
и androidx.activity:activity-ktx:1.8.0-alpha03
. Они были выпущены из внутренней ветки.
Новые функции
- Добавлен
ComponentActivity.setUpEdgeToEdge()
для простой настройки отображения от края до края с сохранением обратной совместимости.
Изменения API
-
ComponentActivity.onBackPressed()
теперь устарел и теперь для обработки обратных вызовов используются API. Разработчикам теперь следует использоватьOnBackPressedDispatcher
вместо переопределения этого метода. ( Ibce2f , b/271596918 ) -
ComponentDialog
иComponentActivity
теперь содержат открытый APIinitViewTreeOwners()
который можно использовать для инициализации всех владельцев дерева представлений перед настройкой представления содержимого. ( Ibdce0 , b/261314581 )
Исправления ошибок
- Исправлена ошибка, из-за которой фрагменты некорректно делали MenuHosts недействительными, что приводило к неожиданному поведению других меню в Activity. ( I9404e , b/244336571 )
Другие изменения
-
ActivityResultRegister
теперь использует KotlinRandom
вместо Java. ( I4d98f , b/272096025 )
Версия 1.8.0-альфа02
8 марта 2023 г.
Выпущены версии androidx.activity:activity:1.8.0-alpha02
, androidx.activity:activity-compose:1.8.0-alpha02
и androidx.activity:activity-ktx:1.8.0-alpha02
. Разработаны во внутренней ветке.
Обновление зависимости
- Начиная с Activity
1.7.0-rc01
: Activity теперь зависит отLifecycle 2.6.0
.
Версия 1.8.0-альфа01
8 февраля 2023 г.
Выпущены androidx.activity:activity:1.8.0-alpha01
, androidx.activity:activity-compose:1.8.0-alpha01
и androidx.activity:activity-ktx:1.8.0-alpha01
. Эта версия была собрана из внутренней ветки.
Новые функции
- Класс
OnBackPressedCallback
теперь содержит новые предиктивные обратные вызовы хода выполнения жеста «назад» для обработки начала жеста «назад», хода выполнения жеста и отмены жеста «назад» в дополнение к предыдущему обратному вызовуhandleOnBackPressed()
при завершении жеста «назад».
Версия 1.7
Версия 1.7.2
24 мая 2023 г.
Выпущены androidx.activity:activity:1.7.2
, androidx.activity:activity-compose:1.7.2
и androidx.activity:activity-ktx:1.7.2
. Версия 1.7.2 содержит эти коммиты.
Исправления ошибок
- Исправлен сбой
ReportDrawn
при выходе за пределы экрана до вызоваreport
. ( Ic46f1 , b/260506820 )
Версия 1.7.1
19 апреля 2023 г.
Выпущены androidx.activity:activity:1.7.1
, androidx.activity:activity-compose:1.7.1
и androidx.activity:activity-ktx:1.7.1
. Версия 1.7.1 содержит эти коммиты.
Исправления ошибок
-
ReportFullyDrawExecuter
больше не допускает утечек при использованииComponentActivity
сActivityScenario
. ( Id2ff2 , b/277434271 )
Версия 1.7.0
22 марта 2023 г.
Выпущены androidx.activity:activity:1.7.0
, androidx.activity:activity-compose:1.7.0
и androidx.activity:activity-ktx:1.7.0
. Версия 1.7.0 содержит эти коммиты.
Важные изменения с версии 1.6.0
- Контракты действий Photo Picker в
PickVisualMedia
иPickMultipleVisualMedia
обновлены и теперь содержат дополнительный резервный вариант на случай недоступностиMediaStore.ACTION_PICK_IMAGES
. Это позволяет OEM-производителям и системным приложениям, таким как сервисы Google Play, обеспечивать единообразие работы Photo Picker на более широком спектре устройств Android и уровней API, реализуя действие fallback . Photo Picker будет использовать этот резервный вариант, если он доступен, прежде чем переходить к использованиюIntent.ACTION_OPEN_DOCUMENT
, который по-прежнему поддерживает все устройства API 19 и более поздних версий. -
ComponentDialog
теперь реализуетSavedStateRegistryOwner
и имеет доступ к своемуSavedStateRegistry
, а также устанавливаетSavedStateRegistryOwner
для своегоViewTree
. Теперь можно использовать Jetpack Compose вComponentDialog
, поскольку он соответствует требованиям какLifecycleOwner
, так иSavedStateRegistryOwner
прикреплённых к окну через APIViewTree
. -
IntentSenderRequest.Builder.setFlags()
теперь позволяет устанавливать несколько флагов изIntent
, а не только один флаг.
Конвертация Kotlin
Ряд классов Activity были преобразованы в Kotlin. Все преобразованные классы сохраняют бинарную совместимость с предыдущими версиями. В следующих классах есть изменения , несовместимые с исходным кодом для классов, написанных на Kotlin: ActivityResultRegistryOwner
и OnBackPressedDispatcherOwner
.
В таблице ниже представлены исходные преобразования для новой версии Activity:
Задание 1.5 | Задание 1.6 |
---|---|
override fun getActivityResultRegistry() = activityResultRegistry | override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher | override val onBackPressedDispatcher = onBackPressedDispatcher |
Эти классы также были преобразованы в Kotlin, но остаются совместимыми с исходным кодом: ContextAware
, ContextAwareHelper
, OnContextAvailableListener
, IntentSenderRequest
и OnBackPressedDispatcher
API FullyDrawnReporter
ComponentActivity
теперь предоставляет экземпляр FullyDrawnReporter
, который позволяет нескольким компонентам сообщать о своей готовности к взаимодействию. ComponentActivity
будет дожидаться завершения работы всех компонентов, прежде чем вызвать reportFullyDrawn()
от вашего имени. Эти API берут на себя все требования по синхронизации и не требуют вызова в рамках вызова onDraw
.
Рекомендуется использовать эти API для обеспечения:
- Передача сигнала среде выполнения Android о завершении запуска для обеспечения того, чтобы весь код, выполняемый во время многокадровой последовательности запуска, был включен и получил приоритет для фоновой компиляции.
- Сигнализация Macrobenchmark и Play Vitals, когда ваше приложение следует считать полностью готовым для показателей запуска, чтобы вы могли отслеживать производительность.
Для более удобного использования FullyDrawnReporter
из отдельных компонуемых объектов были добавлены три API-интерфейса Activity Compose:
-
ReportDrawn
указывает на то, что ваш компонуемый объект сразу готов к взаимодействию. -
ReportDrawnWhen
принимает предикат (например,list.count > 0
), чтобы указать, когда ваш компонуемый объект готов к взаимодействию. -
ReportDrawnAfter
использует метод приостановки, который по завершении указывает на готовность к взаимодействию.
Обновления зависимостей
- Активность теперь зависит от жизненного цикла
2.6.1
. ( 8fc31d ) - Активность теперь зависит от ProfileInstaller
1.3.0
. ( 83d3b1 )
Версия 1.7.0-rc01
8 марта 2023 г.
Выпущены androidx.activity:activity:1.7.0-rc01
, androidx.activity:activity-compose:1.7.0-rc01
и androidx.activity:activity-ktx:1.7.0-rc01
. Версия 1.7.0-rc01 содержит эти коммиты.
Обновление зависимости
- Активность теперь зависит от
Lifecycle 2.6.0
.
Версия 1.7.0-beta02
22 февраля 2023 г.
Выпущены androidx.activity:activity:1.7.0-beta02
, androidx.activity:activity-compose:1.7.0-beta02
и androidx.activity:activity-ktx:1.7.0-beta02
. Версия 1.7.0-beta02 содержит эти коммиты.
Изменения API
- Действие и дополнительные функции, используемые контрактами
PickVisualMedia
иPickMultipleVisualMedia
в качестве резервного варианта на случай недоступностиMediaStore.ACTION_PICK_IMAGES
, теперь являются публичными константами, обеспечивающими стабильность API для OEM-производителей и системных приложений, которым требуется единообразный интерфейс выбора фотографий. Реализация этого резервного варианта пока ограничена только системными приложениями. ( Icd320 )
Версия 1.7.0-beta01
8 февраля 2023 г.
Выпущены androidx.activity:activity:1.7.0-beta01
, androidx.activity:activity-compose:1.7.0-beta01
и androidx.activity:activity-ktx:1.7.0-beta01
. Версия 1.7.0-beta01 содержит эти коммиты.
Новые функции
-
IntentSenderRequest.Builder.setFlags()
теперь позволяет устанавливать несколько флагов изIntent
, а не только один. ( Iac04c )
Исправления ошибок
- Резервный вариант для
PickVisualMedia
в случае недоступности фреймворка Photo Picker теперь корректно ограничивает обработку приложениями, установленными в системном образе устройства. ( If8ae6 )
Конвертации Kotlin
-
ActivityResultRegistryOwner
теперь написан на Kotlin. Это изменение несовместимо с исходным кодом для классов, написанных на Kotlin — теперь необходимо переопределить свойствоactivityResultRegistry
вместо реализации прежней функцииgetActivityResultRegistry()
. ( I0b00e ) -
OnBackPressedDispatcherOwner
теперь написан на Kotlin. Это изменение несовместимо с исходным кодом для классов, написанных на Kotlin — теперь необходимо переопределить свойствоonBackPressedDispatcher
вместо реализации прежней функцииgetOnBackPressedDispatcher
. ( Ia277d ) -
ContextAware
,ContextAwareHelper
,OnContextAvailableListener
,IntentSenderRequest
иOnBackPressedDispatcher
теперь написаны на Kotlin. ( I1a73e , Iada92 , aosp/2410754 , I18ac7 , b/257291701 )
Версия 1.7.0-альфа04
25 января 2023 г.
Выпущены androidx.activity:activity:1.7.0-alpha04
, androidx.activity:activity-compose:1.7.0-alpha04
и androidx.activity:activity-ktx:1.7.0-alpha04
. Версия 1.7.0-alpha04 содержит эти коммиты.
Новые функции
- В контрактах на результаты активности
PickVisualMedia
иPickMultipleVisualMedia
в настоящее время будут использоваться услуги Google Play, предоставляемые фотографий, где доступна в тех случаях, когда система Android предоставила фотографий -сборщик (например,MediaStore.ACTION_PICK_IMAGES
). APIisPhotoPickerAvailable()
, который обнаруживает только систему Android, предоставленную сфотографией, был устарел. Рекомендуется использовать новый APIisPhotoPickerAvailable(Context)
, который вернется, если любой сборщик фотографии будет доступен. ( I55be6 )
Версия 1.7.0-Alpha03
11 января 2023 г.
androidx.activity:activity:1.7.0-alpha03
, androidx.activity:activity-compose:1.7.0-alpha03
и androidx.activity:activity-ktx:1.7.0-alpha03
. Версия 1.7.0-Alpha03 содержит эти коммиты.
Новые функции
-
ComponentDialog
теперь реализуетSavedStateRegistryOwner
и имеет доступ к своей собственнойSavedStateRegistry
и устанавливаетSavedStateRegistryOwner
для своего ViewTree. Теперь можно использовать JetPack Compose вComponentDialog
, поскольку он соответствует какLifecycleOwner
, так иSavedStateRegistryOwner
прикрепленному к окну через требования APIS ViewTree. ( IDCA17 , I73468 B/261162296 )
API меняется
- Добавлено композитный
ReportDrawn
, который немедленно отмечает действие как готовое кreportFullyDrawn
. ( IC5B14 , B/259687964 )
Котлин преобразования
- Классы
ActvitiyResultCallback
иOnBackPressedCallback
были преобразованы в котлин при сохранении источника и бинарной совместимости. ( Ifc5e5 , ide1b0 , b/257291701 )
Версия 1.7.0-Alpha02
24 октября 2022 г.
androidx.activity:activity:1.7.0-alpha02
, androidx.activity:activity-compose:1.7.0-alpha02
и androidx.activity:activity-ktx:1.7.0-alpha02
. Версия 1.7.0-Alpha02 содержит эти коммиты.
Исправления ошибок
- Из деятельности
1.6.1
: Исправлена проблема с контрактом на результат деятельностиPickMultipleVisualMedia
, не запускающегося на устройствах Android R при использовании значения по умолчанию дляmaxItems
. ( IE2776 , B/249182130 )
Версия 1.7.0-Alpha01
5 октября 2022 г.
androidx.activity:activity:1.7.0-alpha01
, androidx.activity:activity-compose:1.7.0-alpha01
и androidx.activity:activity-ktx:1.7.0-alpha01
. Версия 1.7.0-Alpha01 содержит эти коммиты.
Полностью RawnReporter API
ComponentActivity
теперь обеспечивает экземпляр FullyDrawnReporter
, который позволяет нескольким компонентам сообщать, когда они готовы к взаимодействию. ComponentActivity
будет ждать, пока все компоненты будут завершены, прежде чем вызовать reportFullyDrawn()
от вашего имени. Эти API заботятся о требованиях к срокам для вас и не должны вызывать в рамках вызова onDraw
.
Эти API рекомендуются включить:
- Сигнализация времени выполнения Android при завершении запуска, чтобы гарантировать, что весь код запускается во время многократной последовательности запуска, включенных и приоритетных для фонового компиляции.
- Сигнализация MacRobenchmark и воспроизводить жизненно важные органы, когда ваше приложение следует считать полностью нарисованным для метрик запуска, чтобы вы могли отслеживать производительность.
Были добавлены два API -интерфейсы, чтобы сделать API более удобной для использования FullyDrawnReporter
из отдельных композиционных продуктов:
-
ReportDrawnWhen
когда требуется предикат (то естьlist.count > 0
), чтобы указать, когда ваша композиция готова к взаимодействию. -
ReportDrawnAfter
принимает приостановление метода, который, когда он завершается, указывает на то, что вы готовы к взаимодействию.
Версия 1.6.1
Версия 1.6.1
24 октября 2022 г.
androidx.activity:activity:1.6.1
, androidx.activity:activity-compose:1.6.1
, и androidx.activity:activity-ktx:1.6.1
выпускаются. Версия 1.6.1 содержит эти коммиты.
Исправления ошибок
- Исправлена проблема с контрактом на результат активности
PickMultipleVisualMedia
, не запускающегося на устройствах Android R при использовании значения по умолчанию дляmaxItems
. ( IE2776 , B/249182130 )
Версия 1.6.0
Версия 1.6.0
21 сентября 2022 года
androidx.activity:activity:1.6.0
, androidx.activity:activity-compose:1.6.0
, и androidx.activity:activity-ktx:1.6.0
выпускаются. Версия 1.6.0 содержит эти коммиты.
Важные изменения с 1.5.0
- Добавлены
ActivityResultContracts.PickVisualMedia
иActivityResultContracts.PickMultipleVisualMedia
для предоставления обратного совместимого договора, который используетMediaStore.ACTION_PICK_IMAGES
, когда доступен сборщик фото иIntent.ACTION_OPEN_DOCUMENT
когда он недоступен. - Интегрировал
OnBackInvokedCallback
в Android 13 вOnBackPressedDispatchers
, предоставленныеComponentActivity
иComponentDialog
. Это гарантирует, что все API, основанные наOnBackPressedDispatcher
, работая при включении прогнозирующего жеста .
Версия 1.6.0-RC02
7 сентября 2022 года
androidx.activity:activity:1.6.0-rc02
, androidx.activity:activity-compose:1.6.0-rc02
и androidx.activity:activity-ktx:1.6.0-rc02
выпускаются. Версия 1.6.0-RC02 содержит эти коммиты.
Исправления ошибок
-
OnBackPressedDispatcher
теперь регистрируетOnBackInvokedCallback
сPRIORITY_DEFAULT
вместоPRIORITY_OVERLAY
. ( I3901f ) - В классах, которые расширяют
ComponentActivity
теперь всегда будут отправлены оба ихonMultiWindowModeChanged()
. ( IC4D85 ) -
ActivityResultRegistry
больше не вернет результат вActivityResultCallback
, когдаlaunch
вызовов бросает любоеException
, а обратный вызов был зарегистрирован безLifecycleOwner
. ( IA7FF7 , B/238350794 ) -
ComponentActivity
теперь будет правильно отправлять вызовы меню без необходимости вызов супер функции в вашей деятельности. ( IE33C5 , B/238057118 )
Обновление зависимости
- Библиотека
Activity
теперь зависит от жизненного цикла2.5.1
. ( IF6697 )
Версия 1.6.0-RC01
24 августа 2022 г.
androidx.activity:activity:1.6.0-rc01
, androidx.activity:activity-compose:1.6.0-rc01
и androidx.activity:activity-ktx:1.6.0-rc01
выпускаются. Версия 1.6.0-RC01 содержит эти коммиты.
Исправления ошибок
- Инициализация
OnBackPressedDispatcher
больше не будет вызыватьClassVerificationError
и при использовании версий SDK до 33. ( IC32E1 ) - Классы, которые переопределяют
ComponentActivity
onPictureInPictureModeChanged()
обратный вызов, теперь всегда будут отправлены их обратные вызовы. ( Ib7fdb )
Версия 1.6.0-бета01
10 августа 2022 года
androidx.activity:activity:1.6.0-beta01
, androidx.activity:activity-compose:1.6.0-beta01
и androidx.activity:activity-ktx:1.6.0-beta01
. Версия 1.6.0-BETA01 содержит эти коммиты.
API меняется
- Оценка устарела методы
startActivityForResult
иstartIntentSenderForResult
наComponentActivity
с@NonNull
, потому что прохождениеnull
всегда привело к аварии. ( ID2A25 , B/231476082 )
Исправления ошибок
- Из деятельности
1.5.1
:ActivityResultRegistry
больше не вернет результат вActivityResultCallback
, когдаlaunch
вызовов бросает любоеException
, а обратный вызов был зарегистрирован безLifecycleOwner
. ( IA7FF7 , B/238350794 ) - Из деятельности
1.5.1
:ComponentActivity
теперь будет должным образом отправлять вызовы меню вonPrepareOptionMenu()
,onCreateOptionsMenu()
иonOptionsItemSelected()
переопределяется без необходимости вызовать супер функции. ( IE33C5 , B/238057118 )
Обновление зависимости
- От действия
1.5.1
: БиблиотекаActivity
теперь зависит отLifecycle
версии2.5.1
. ( IF6697 )
Версия 1.6.0-Alpha05
15 июня 2022 года
androidx.activity:activity:1.6.0-alpha05
, androidx.activity:activity-compose:1.6.0-alpha05
и androidx.activity:activity-ktx:1.6.0-alpha05
. Версия 1.6.0-Alpha05 была разработана в частном филиале перед выпуском и не имеет общественных коммитов.
API меняется
-
minCompileSdk
сейчас 33, чтобы соответствовать TIRAMISU BETA 3 SDK
Исправления ошибок
- Фиксированный сбой на более старых устройствах при прохождении проверки расширения SDK для
PickVisualMedia
ActivityResultContract
, чтобы теперь он должен работать сACTION_OPEN_DOCUMENT
на устройствах под управлением Android 10 и ниже.
Версия 1.6.0-Alpha04
18 мая 2022 г.
androidx.activity:activity:1.6.0-alpha04
и androidx.activity:activity-ktx:1.6.0-alpha04
выпускаются.
Исправления ошибок
- Исправлена ошибка в
PickVisualMediaRequest
, где попытка создать запрос, либо через строитель, так и функцию Kotlin верхнего уровня, приведет к переполнению стека. - Интегрировал
OnBackInvokedCallback
в Android 13 Dev Beta 2 вOnBackPressedDispatcher
, предоставленныйComponentDialog
. Это гарантирует, что все API, основанные наOnBackPressedDispatcher
, работая при включении прогнозирующего жеста .
Версия 1.6.0-Alpha03
27 апреля 2022 года
androidx.activity:activity:1.6.0-alpha03
, androidx.activity:activity-compose:1.6.0-alpha03
и androidx.activity:activity-ktx:1.6.0-alpha03
выпускаются.
- Примечание. Эта версия будет компилироваться только против разработчика Android 13 Beta 1 SDK.
Новые функции
- Добавлены
ActivityResultContracts.PickVisualMedia
иActivityResultContracts.PickMultipleVisualMedia
для предоставления обратного совместимого договора, который используетMediaStore.ACTION_PICK_IMAGES
, когда доступен сборщик фото иIntent.ACTION_OPEN_DOCUMENT
когда он недоступен. - Интегрировал
OnBackInvokedCallback
в Android 13 Dev Beta 1 вOnBackPressedDispatcher
, предоставленныйComponentActivity
. Это гарантирует, что все API, основанные наOnBackPressedDispatcher
, работая при включении прогнозирующего жеста .
Версия 1.6.0-Alpha01
23 марта 2022 г.
androidx.activity:activity:1.6.0-alpha01
, androidx.activity:activity-compose:1.6.0-alpha01
и androidx.activity:activity-ktx:1.6.0-alpha01
высвобождаются.
- Примечание. Эта версия будет компилироваться только против разработчика Android 13 Preview 2 SDK.
Новые функции
- Интегрированные изменения в Android 13 Dev Preview 2 в
ComponentActivity
.
Версия 1.5.1
Версия 1.5.1
27 июля 2022 г.
androidx.activity:activity:1.5.1
, androidx.activity:activity-compose:1.5.1
, и androidx.activity:activity-ktx:1.5.1
выпускаются. Версия 1.5.1 содержит эти коммиты.
Исправления ошибок
ActivityResultRegistry
больше не вернет результат вActivityResultCallback
, когда вызовlaunch()
вызовет любоеException
, а обратный вызов был зарегистрирован безLifecycleOwner
. ( IA7FF7 , B/238350794 )ComponentActivity
теперь будет правильно отправлять вызовы меню вonPrepareOptionMenu()
,onCreateOptionsMenu()
иonOptionsItemSelected()
переопределения без необходимости вызовать супер функцию. ( IE33C5 , B/238057118 )
Обновление зависимости
- Библиотека
Activity
теперь зависит от жизненного цикла2.5.1
. ( IF6697 )
Версия 1.5.0
Версия 1.5.0
29 июня 2022 г.
androidx.activity:activity:1.5.0
, androidx.activity:activity-compose:1.5.0
, и androidx.activity:activity-ktx:1.5.0
выпускаются. Версия 1.5.0 содержит эти коммиты.
Важные изменения с 1.4.0
- ComponentDialog -
ComponentDialog
- это подклассDialog
, который включает в себяOnBackPressedDispatcher
, который будет вызван при нажатии кнопки «Система» и диалоговое окно. Важно отметить, что этот подкласс также устанавливаетViewTreeOnBackPressedDispatcherOwner
, позволяя представлениям общий способ получить правильный диспетчер, независимо от того, существует ли он вComponentActivity
илиComponentDialog
. - Интерфейсы обратного вызова -
ComponentActivity
теперь реализует набор модульных интерфейсов обратного вызова, которые можно использовать вместо обратныхActivity
. Эти интерфейсы включают в себя следующее:OnNewIntentProvider
,OnConfigurationChangedProvider
,OnTrimMemoryProvider
,OnPictureInPictureModeChangedProvider
,OnMultiWindowModeChangedProvider
- CreationExtras Integration -
ComponentActivity
теперь имеет возможность обеспечить бездействиеViewModelProvider.Factory
через LifeCycle2.5.0
'CreationExtras
.
Другие изменения
- Конструктор без параметров для
ActivityResultContracts.CreateDocument
был устарел и заменен новым конструктором, который принимает конкретный тип MIME (например, «Image/png»), как требуетсяIntent.ACTION_CREATE_DOCUMENT
.
Версия 1.5.0-RC01
11 мая 2022 года
androidx.activity:activity:1.5.0-rc01
, androidx.activity:activity-compose:1.5.0-rc01
и androidx.activity:activity-ktx:1.5.0-rc01
высвобождаются без изменений из 1.5.0-бита01. Версия 1.5.0-RC01 содержит эти коммиты.
Версия 1.5.0-бета01
20 апреля 2022 г.
androidx.activity:activity:1.5.0-beta01
, androidx.activity:activity-compose:1.5.0-beta01
и androidx.activity:activity-ktx:1.5.0-beta01
выпускаются. Версия 1.5.0-бета01 содержит эти коммиты.
Обновления зависимости
- Активность теперь зависит от жизненного цикла
2.4.0-beta01
.
Версия 1.5.0-Alpha05
6 апреля 2022 года
androidx.activity:activity:1.5.0-alpha05
, androidx.activity:activity-compose:1.5.0-alpha05
и androidx.activity:activity-ktx:1.5.0-alpha05
. Версия 1.5.0-Alpha05 содержит эти коммиты.
Исправления ошибок
-
ComponentActivity
onPanelClosed()
теперь также вызывает SuperonPanelClosed()
, решает проблему, при которой методonContextMenuClosed
не будет вызван. ( IB6F77 )
Версия 1.5.0-Alpha04
23 марта 2022 г.
androidx.activity:activity:1.5.0-alpha04
, androidx.activity:activity-compose:1.5.0-alpha04
и androidx.activity:activity-ktx:1.5.0-alpha04
. Версия 1.5.0-Alpha04 содержит эти коммиты.
Исправления ошибок
-
SavedStateViewFactory
теперь поддерживает использованиеCreationExtras
, даже если он был инициализирован с помощьюSavedStateRegistryOwner
. Если предоставляются дополнения, инициализированные аргументы игнорируются. ( I6c43b , b/224844583 )
Версия 1.5.0-Alpha03
23 февраля 2022 года
androidx.activity:activity:1.5.0-alpha03
, androidx.activity:activity-compose:1.5.0-alpha03
и androidx.activity:activity-ktx:1.5.0-alpha03
. Версия 1.5.0-Alpha03 содержит эти коммиты.
API меняется
- Теперь вы можете перенести
CreationExtras
в действиеby viewModels()
( i6a3e6 , b/217600303 )
Версия 1.5.0-Alpha02
9 февраля 2022 г.
androidx.activity:activity:1.5.0-alpha02
, androidx.activity:activity-compose:1.5.0-alpha02
и androidx.activity:activity-ktx:1.5.0-alpha02
. Версия 1.5.0-Alpha02 содержит эти коммиты.
Новые функции
-
ComponentActivity
теперь реализует интерфейсOnPictureInPictureModeChangedProvider
, позволяющий любому компоненту получать события изменения в картинке в картине. ( I9f567 ) -
ComponentActivity
теперь реализует интерфейсOnMultiWindowModeChangedProvider
, чтобы позволить любому компоненту принимать события изменения режима с несколькими окнами. ( I62d91 )
Версия 1.5.0-Alpha01
26 января 2022 г.
androidx.activity:activity:1.5.0-alpha01
, androidx.activity:activity-compose:1.5.0-alpha01
и androidx.activity:activity-ktx:1.5.0-alpha01
. Версия 1.5.0-Alpha01 содержит эти коммиты.
Новые функции
-
ComponentActivity
теперь интегрируется с ViewModel CreationExtras, введенным в рамках жизненного цикла2.5.0-alpha01
. ( IE7E00 , B/207012584 ) - Добавлен
ComponentDialog
, подклассDialog
, который включает в себяOnBackPressedDispatcher
, который будет вызван, когда кнопка «Окна» нажатится, когда диалог виден. Важно отметить, что этот подкласс также устанавливаетViewTreeOnBackPressedDispatcherOwner
, позволяя представлениям общий способ получить правильный диспетчер, независимо от того, существует ли он вComponentActivity
илиComponentDialog
. ( I8a1bc ) -
ComponentActivity
теперь реализует новый интерфейсOnNewIntentProvider
, чтобы позволить любому компоненту получать эти события. ( If1f8b ) -
ComponentActivity
теперь реализует новый интерфейсOnConfigurationChangedProvider
, чтобы позволить любому компоненту получать эти события. ( If623b ) -
ComponentActivity
теперь реализует новый интерфейсOnTrimMemoryProvider
, чтобы позволить любому компоненту получать эти события. ( IA9295 )
API меняется
- Конструктор без параметров для
ActivityResultContracts.CreateDocument
был устарел и заменен новым конструктором, который принимает конкретный тип MIME (например,"image/png"
), как требуетсяIntent.ACTION_CREATE_DOCUMENT
. ( I2bec6 ) -
OnBackPressedDispatcherOwner
связанный с представлением, теперь может быть получен черезViewTreeOnBackPressedDispatcherOwner
, а не полагаться на составContext
. ( I74685 )
Исправления ошибок
- Исправлена сбоем при доступе к
ViewModel
в первый раз из обратного вызововregisterForActivityResult()
или обратных вызовов вLifecycleObserver
, добавленную в рамкахinit
ComponentActivity
. ( IFE83F )
Версия 1.4.0
Версия 1.4.0
27 октября 2021 года
androidx.activity:activity:1.4.0
, androidx.activity:activity-compose:1.4.0
, и androidx.activity:activity-ktx:1.4.0
выпускаются. Версия 1.4.0 содержит эти коммиты.
Важные изменения с 1.3.0
- Androidx
ComponentActivity
теперь реализует интерфейсMenuHost
. Это позволяет любому компоненту добавлять элементы меню вActionBar
, добавив в действие экземплярMenuProvider
. КаждоеMenuProvider
можно добавить с помощьюLifecycle
, который автоматически контролирует видимость этих пунктов меню на основе состоянияLifecycle
и обрабатывать удалениеMenuProvider
, когдаLifecycle
уничтожен. - Класс
ActivityResultContract
был переписан в Kotlin, чтобы гарантировать, что разработчики, пишущие пользовательские контракты в Kotlin, могут определить правильную нулясь для их классов ввода и вывода. - Класс
ActivityResultContracts
и его контракты были переписаны в Котлине, чтобы обеспечить надлежащую нуль.
Версия 1.4.0-RC01
13 октября 2021 года
androidx.activity:activity:1.4.0-rc01
, androidx.activity:activity-compose:1.4.0-rc01
и androidx.activity:activity-ktx:1.4.0-rc01
высвобождаются. Версия 1.4.0-RC01 содержит эти коммиты.
Исправления ошибок
-
ActivityResultRegistry
больше не вернет результат вActivityResultCallback
, когдаlaunch
вызовов бросает любоеException
. ( IF4F91 , B/200845664 )
Версия 1.4.0-бета01
29 сентября 2021 года
androidx.activity:activity:1.4.0-beta01
, androidx.activity:activity-compose:1.4.0-beta01
и androidx.activity:activity-ktx:1.4.0-beta01
выпускаются. Версия 1.4.0-бета01 содержит эти коммиты.
API меняется
- Исправлена тип для
ActivityResultContracts.OpenMultipleDocuments
иActivityResultContracts.GetMultipleContents
, которые заставили затем использовать выходной типList<? extends Uri>
при использовании кода из языка программирования Java. ( If71de ) - Общественные константы в рамках
ActivityResultContracts.StartActivityForResult
,ActivityResultContracts.StartIntentSenderForResult
иActivityResultContracts.RequestMultiplePermissions
теперь доступны при использовании Kotlin через свои нынеCompanion
объекты. ( AOSP/1832555 )
Обновления документации
- Сообщение об испаке для API, которые теперь обрабатывают API -интерфейсы результатов деятельности , а именно
startActivityForResult
,startIntentSenderForResult
,onActivityResult
,requestPermissions
иonRequestPermissionsResult
, все были расширены с более подробной информацией. ( CCE80F )
Версия 1.4.0-Alpha02
15 сентября 2021 года
androidx.activity:activity:1.4.0-alpha02
, androidx.activity:activity-compose:1.4.0-alpha02
и androidx.activity:activity-ktx:1.4.0-alpha02
. Версия 1.4.0-Alpha02 содержит эти коммиты.
Новые функции
- Артефакт
activity-compose
в настоящее время содержит ошибку Lint LintLaunchDuringComposition
, которая мешает вам вызвать методlaunch
ActivityResultLauncher
как часть композиции, поскольку композиция должна быть свободна от побочного эффекта. Используйте API для обработки побочных эффектов . ( 7C2BBE , B/191347220 )
API меняется
- Класс
ActivityResultContract
был переписан в Kotlin, чтобы гарантировать, что разработчики, пишущие пользовательские контракты в Kotlin, могут определить правильную нулясь для их классов ввода и вывода. ( I8a8f5 ) - Класс
ActivityResultContracts
и его контракты были переписаны в Котлине, чтобы обеспечить надлежащую нуль. ( I69802 )
Версия 1.4.0-Alpha01
1 сентября 2021 года
androidx.activity:activity:1.4.0-alpha01
, androidx.activity:activity-compose:1.4.0-alpha01
и androidx.activity:activity-ktx:1.4.0-alpha01
. Версия 1.4.0-Alpha01 содержит эти коммиты.
Новые функции
- Androidx
ComponentActivity
теперь реализует интерфейсMenuHost
. Это позволяет любому компоненту добавлять элементы меню вActionBar
, добавив экземплярMenuProvider
в действие. КаждоеMenuProvider
можно добавить с помощьюLifecycle
, который автоматически контролирует видимость этих пунктов меню на основе состоянияLifecycle
и обрабатывать удалениеMenuProvider
, когдаLifecycle
уничтожен. ( 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)
}
Изменения поведения
-
ActivityResultRegistry
теперь будет выброситьIllegalStateException
при попытке позвонитьlaunch()
наActivityResultLauncher
, который не зарегистрирован или который не был зарегистрирован. ( IDA75D , B/192567522 )
Внешний вклад
Версия 1.3.1
Версия 1.3.1
4 августа 2021 г.
androidx.activity:activity:1.3.1
, androidx.activity:activity-compose:1.3.1
, и androidx.activity:activity-ktx:1.3.1
выпускаются. Версия 1.3.1 содержит эти коммиты.
Обновления зависимости
- Деятельность теперь зависит от котлина
1.5.21
. - СООБЩЕНИЕ СОЗДАНИЯ В настоящее время зависит от составления
1.0.1
.
Версия 1.3.0
Версия 1.3.0
28 июля 2021 года
androidx.activity:activity:1.3.0
, androidx.activity:activity-compose:1.3.0
, и androidx.activity:activity-ktx:1.3.0
выпускаются. Версия 1.3.0 содержит эти коммиты.
Важные изменения с 1.2.0
- Активное сочинение артефакт - Артефакт
activity-compose
обеспечивает метод расширенияsetContent
для размещения вашего JetPack Compose UI в действии и сочинять конкретные обертки для взаимодействия с APIComponentActivity
для обработки кнопки «Система» и API -интерфейсы результатов активности. Смотрите документацию для более подробной информации. - CaptureVideo Contract -
CaptureVideo
ActivityResultContract
заменяет теперь устаревший контрактTakeVideo
и возвращает логический обозначение успеха, который работает во многих приложениях для камеры. - Отслеживание подсказки для изображения в картине -Пользователи
activity-ktx
теперь могут использовать методActivity
trackPipAnimationHintView
для автоматического восстановленияPictureInPictureParams
с новой позицией представления, поскольку он меняет положение относительно окна.
Версия 1.3.0-RC02
14 июля 2021 г.
androidx.activity:activity:1.3.0-rc02
, androidx.activity:activity-compose:1.3.0-rc02
и androidx.activity:activity-ktx:1.3.0-rc02
высвобождаются. Версия 1.3.0-RC02 содержит эти коммиты.
Исправления ошибок
- Обратные вызовы
ActivityResultRegistry
теперь должным образом сохраняются и восстанавливаются, поэтому обратные вызовы не дублируются в сохранении. ( I97816 , B/191893160 )
Версия 1.3.0-RC01
1 июля 2021 г.
androidx.activity:activity:1.3.0-rc01
, androidx.activity:activity-compose:1.3.0-rc01
и androidx.activity:activity-ktx:1.3.0-rc01
высвобождаются без изменений из 1.3.0-beta02
. Версия 1.3.0-RC01 содержит эти коммиты.
Версия 1.3.0-бета02
16 июня 2021 г.
androidx.activity:activity:1.3.0-beta02
, androidx.activity:activity-compose:1.3.0-beta02
и androidx.activity:activity-ktx:1.3.0-beta02
выпускаются. Версия 1.3.0-бета02 содержит эти коммиты.
Обновленная activity-compose
, чтобы зависеть от составления 1.0.0-beta09
. androidx.compose.ui:ui-test-junit4
теперь имеет зависимость от времени компиляции от activity-compose
.
Версия 1.3.0-бета01
2 июня 2021 года
androidx.activity:activity:1.3.0-beta01
, androidx.activity:activity-compose:1.3.0-beta01
и androidx.activity:activity-ktx:1.3.0-beta01
выпускаются. Версия 1.3.0-бета01 содержит эти коммиты.
API меняется
- Ранее устаревший метод
@Composable registerForActivityResult()
был удален. Пожалуйста, используйтеrememberLauncherForActivityResult()
. ( IC39D3 )
Версия 1.3.0-Alpha08
18 мая 2021 г.
androidx.activity:activity:1.3.0-alpha08
, androidx.activity:activity-compose:1.3.0-alpha08
и androidx.activity:activity-ktx:1.3.0-alpha08
. Версия 1.3.0-Alpha08 содержит эти коммиты.
Новые функции
- Новый
CaptureVideo
ActivityResultContract
возвращает логическое значение для вашейActivityResultCallback
, что указывает, было ли ваше видео успешно сохранено в данном URI. Это заменяет устаревший контрактTakeVideo
, поскольку приложения камеры очень редко поддерживают возвращение растровой карты миниатюры, что делает результат бесполезным. ( IE21F2 , B/185938070 ) - Добавлен новый API
Activity#setPipAnimationHintView
, чтобы обновить подсказку источника Pipparams, когда перемещается представление. ( I9063d )
API меняется
- Функция
rememberLauncherForActivityResult
теперь возвращает пусковую установку, которая осуждает функциюunregister()
- регистрация и нерегистрирование пусковой установки автоматически обрабатываетсяrememberLauncherForActivityResult
. ( I2443e )
Составьте совместимость
-
androidx.activity:activity-compose:1.3.0-alpha08
совместим только с Compose Version1.0.0-beta07
и выше.
Версия 1.3.0-Alpha07
21 апреля 2021 года
androidx.activity:activity:1.3.0-alpha07
, androidx.activity:activity-compose:1.3.0-alpha07
и androidx.activity:activity-ktx:1.3.0-alpha07
. Версия 1.3.0-Alpha07 содержит эти коммиты.
Исправления ошибок
-
rememberLauncherForActivityResult
теперь возвращает стабильную ссылку на тот же экземплярActivityResultLauncher
, даже если контракт изменяется из -за переоборудования. ( Id2d6d ) - Использование нестабильных версий фрагментов выше
1.3.0
больше не будет бросить ложную положительную ошибку ворса, говорящая вам на1.3.0
. ( AOSP/1670206 , B/184847092 )
Версия 1.3.0-Alpha06
7 апреля 2021 года
androidx.activity:activity:1.3.0-alpha06
, androidx.activity:activity-compose:1.3.0-alpha06
и androidx.activity:activity-ktx:1.3.0-alpha06
. Версия 1.3.0-Alpha06 содержит эти коммиты.
API меняется
- API
registerForActivityResult()
был переименован, чтобыrememberLauncherForActivityResult()
, чтобы лучше указать, что возвращаемыйActivityResultLauncher
- это управляемый объект, который запоминается от вашего имени. Попытка назватьunregister
возвращаемойActivityResultLauncher
теперь вынесет ошибку. ( I2bb6d ) -
LocalOnBackPressedDispatcherOwner.current
иLocalActivityResultRegistryOwner.current
теперь возвращает нулевое значение, чтобы лучше определить, доступно ли оно в текущей композиции. API, которые требуют тех API, таких какBackHandler
иrememberLauncherForActivityResult()
, соответственно, теперь принесут более описательную ошибку, если базовый владелец не найден.NavHost
теперь работает, даже когдаOnBackPressedDispatcherOwner
не найден, в этом случае при предварительном просмотреNavHost
. ( I7d8b4 )
Исправления ошибок
-
BackHandler
теперь будет правильно перехватывать задними прессами в случаеSTOPPED
деятельности, затемSTARTED
снова, а другие обратные вызовы были добавлены с жизненным циклом. ( I71de6 , b/182284739 ) - Использование расширения метода
launch()
с помощью пользовательскогоActivityResultContract
, которое имеетUnit
ввода, больше не будет вызыватьNullPointerException
( I76282 , B/183837954 )
Версия 1.3.0-Alpha05
24 марта 2021 года
androidx.activity:activity:1.3.0-alpha05
, androidx.activity:activity-compose:1.3.0-alpha05
и androidx.activity:activity-ktx:1.3.0-alpha05
. Версия 1.3.0-Alpha05 содержит эти коммиты.
Исправления ошибок
- Из действия 1.2.2 : Исправлена проблема в
InvalidFragmentVersionForActivityResult
Lint Проверка, которая привела к ложноположительному положительному при использованию фрагмента 1.3.1 или выше. ( I54da1 , b/182388985 ) - Из деятельности 1.2.2 :
ComponentActivity
теперь позволяет избежатьClassNotFoundException
при запускеIntent
отActivityResultContract
, который ранее считался дополнительным в другомIntent
. ( IEFF05 , B/182906230 )
Обновления зависимости
- От деятельности 1.2.2 : активность теперь зависит от жизненного цикла
2.3.1
.
Версия 1.3.0-Alpha04
10 марта 2021 года
androidx.activity:activity:1.3.0-alpha04
, androidx.activity:activity-compose:1.3.0-alpha04
и androidx.activity:activity-ktx:1.3.0-alpha04
. Версия 1.3.0-Alpha04 содержит эти коммиты.
Исправления ошибок
- Из деятельности
1.2.1
:RequestMultiplePermissions
теперь всегда возвращает результаты для всех запрошенных разрешений вместо только разрешений, которые ранее не были предоставлены. ( I50bc3 , b/180884668 ) - Из деятельности
1.2.1
:ActivityResultRegistry
теперь гарантирует, что запросы в процессеlaunch()
будут возвращать свои результаты, даже если выunregister()
сноваregister()
с тем же ключом. ( I9ef34 , b/181267562 ) - Activity Compose больше не добавляет тестовых зависимостей к классовой дороге. ( IFD8B3 )
- Исправлена проблема с
BackHandler
, в которой ранееonBack
Lambda все еще использовалась после переоборудования. ( 8EB5EB )
Версия 1.3.0-Alpha03
24 февраля 2021 г.
androidx.activity:activity:1.3.0-alpha03
, androidx.activity:activity-compose:1.3.0-alpha03
и androidx.activity:activity-ktx:1.3.0-alpha03
. Версия 1.3.0-Alpha03 содержит эти коммиты.
Новые функции
- В настоящее время существует композиционная функция
registerForActivityResult
для получения результатов деятельности в рамках композибельных продуктов. ( IA7851 , B/172690553 )
API меняется
-
LocalOnBackPressedDispatcherOwner
теперь имеетprovides
функции, которые можно использовать сCompositionLocalProvider
, заменив APIasProvidableCompositionLocal()
. ( I45d24 )
Версия 1.3.0-Alpha02
10 февраля 2021 г.
androidx.activity:activity:1.3.0-alpha02
, androidx.activity:activity-compose:1.3.0-alpha02
и androidx.activity:activity-ktx:1.3.0-alpha02
высвобождаются. Версия 1.3.0-Alpha02 содержит эти коммиты.
Исправления ошибок
- Исправлена проблема в активности составьте
1.3.0-alpha01
, которая вызываетNoSuchMethodError: No static method setContent
Excontent при использовании Compose1.0.0-alpha12
. Все пользователи композиции должны зависеть от1.3.0-alpha02
и выше. ( B/179911234 )
API меняется
- API
BackHandler
может использоваться для того, чтобы позволить композиции для перехвата системы обратной связи. ( I58ed5 , b/172154006 )
Версия 1.3.0-Alpha01
10 февраля 2021 г.
androidx.activity:activity:1.3.0-alpha01
, androidx.activity:activity-compose:1.3.0-alpha01
и androidx.activity:activity-ktx:1.3.0-alpha01
. Версия 1.3.0-Alpha01 содержит эти коммиты.
Новые функции
- Новый артефакт
activity-compose
обеспечивает JetPack сочинять конкретных помощников для API-интерфейсовandroidx.activity
.-
ComponentActivity.setContent
перешел отandroidx.compose.ui.platform.setContent
вandroidx.activity.compose.setContent
. ( ICF416 )
-
Известные проблемы
- Использование Activity Compose
1.3.0-alpha01
и библиотеки, которые зависят от этого, таких какandroidx.compose.ui:ui-test-junit4:1.0.0-alpha12
, приведет к исключениюNoSuchMethodError: No static method setContent
. ( B/179911234 )
Версия 1.2.4
Версия 1.2.4
21 июля 2021 г.
androidx.activity:activity:1.2.4
и androidx.activity:activity-ktx:1.2.4
выпускаются. Версия 1.2.4 содержит эти коммиты.
Исправления ошибок
- Из деятельности
1.3.0-rc02
: обратные вызовы ActivityResultregistry теперь должным образом сохраняются и восстанавливаются, поэтому обратные вызовы не дублируются в сохранении. ( I97816 , B/191893160 )
Версия 1.2.3
Версия 1.2.3
5 мая 2021 г.
androidx.activity:activity:1.2.3
и androidx.activity:activity-ktx:1.2.3
выпускаются. Версия 1.2.3 содержит эти коммиты.
Исправления ошибок
- Использование расширения метода
launch()
с помощью пользовательскогоActivityResultContract
, которое имеетUnit
ввода, больше не будет вызыватьNullPointerException
( I76282 , B/183837954 ) - Исправлена ложная ошибка положительного ворса, в котором говорилось, что вы используете фрагмент
1.3.0
при использовании моментального снимка, альфа, бета -версии или RC строительства более новой версии фрагментов. ( F4A57E , B/184847092 )
Версия 1.2.2
Версия 1.2.2
24 марта 2021 года
androidx.activity:activity:1.2.2
и androidx.activity:activity-ktx:1.2.2
выпускаются. Версия 1.2.2 содержит эти коммиты.
Исправления ошибок
- Исправлена проблема в
InvalidFragmentVersionForActivityResult
Lint Проверка, которая привела к ложному положительному при использованию фрагмента 1.3.1 или выше. ( I54da1 , b/182388985 ) -
ComponentActivity
теперь избегаетClassNotFoundException
при запускеIntent
отActivityResultContract
, который ранее считался дополнительным в другомIntent
. ( IEFF05 , B/182906230 )
Обновления зависимости
- Активность теперь зависит от жизненного цикла
2.3.1
.
Версия 1.2.1
Версия 1.2.1
10 марта 2021 года
androidx.activity:activity:1.2.1
и androidx.activity:activity-ktx:1.2.1
выпускаются. Версия 1.2.1 содержит эти коммиты.
Исправления ошибок
-
RequestMultiplePermissions
теперь всегда возвращает результаты для всех запрошенных разрешений, а не только разрешения, которые ранее не были предоставлены. ( I50bc3 , b/180884668 ) -
ActivityResultRegistry
теперь гарантирует, что в процессеlaunch()
запросы запуска () будут возвращать свои результаты, даже если выunregister()
, то сноваregister()
с тем же ключом. ( I9ef34 , b/181267562 )
Версия 1.2.0
Версия 1.2.0
10 февраля 2021 г.
androidx.activity:activity:1.2.0
and androidx.activity:activity-ktx:1.2.0
are released. Version 1.2.0 contains these commits.
Major changes since 1.1.0
- Activity Result APIs :
ComponentActivity
now provides anActivityResultRegistry
that lets you handlestartActivityForResult()
+onActivityResult()
as well asrequestPermissions()
+onRequestPermissionsResult()
flows without overriding methods in your Activity or Fragment, brings increased type safety viaActivityResultContract
, and provides hooks for testing these flows. See the updated Getting a Result from an Activity .
ContextAware
:ComponentActivity
now implementsContextAware
, allowing you to add one or moreOnContextAvailableListener
instances which will receive a callback before the baseActivity.onCreate()
.- A suspending Kotlin extension
withContextAvailable()
allows you to run a non-suspending block when the Context becomes available and return a result. - This API is used by
FragmentActivity
in Fragment 1.3.0 to restore the state of theFragmentManager
. Any listeners added to subclasses ofFragmentActivity
will run after that listener. - This API is used by
AppCompatActivity
in AppCompat 1.3.0-alpha02 or higher. Any listeners added to subclasses ofAppCompatActivity
will run after that listener.
- A suspending Kotlin extension
ViewTree
Support :ComponentActivity
now supports theViewTreeLifecycleOwner.get(View)
,ViewTreeViewModelStoreOwner.get(View)
, andViewTreeSavedStateRegistryOwner
APIs added in Lifecycle2.3.0
and SavedState1.1.0
such that it will return the Activity as theLifecycleOwner
,ViewModelStoreOwner
, andSavedStateRegistryOwner
for any Views directly added to theComponentActivity
.
- reportFullyDrawn() backport - The
Activity
method ofreportFullyDrawn()
has been backported inComponentActivity
to work on all API levels, fixing a crash on API 19 and adding tracing for this method for all API levels.
Version 1.2.0-rc01
December 16, 2020
androidx.activity:activity:1.2.0-rc01
and androidx.activity:activity-ktx:1.2.0-rc01
are released. Version 1.2.0-rc01 contains these commits.
Исправления ошибок
- The
ActivityResultRegistry
now always restores the exact state that was saved. ( Idd56b ) - Add tracing to
ComponentActivity.reportFullyDrawn
( Ic7632 )
External Contribution
-
ComponentActivity
now overridesreportFullyDrawn()
, allowing it to be called on all API levels and fixing a crash when calling this method without the appropriate system permission on API 19 devices. Thanks Simon Schiller! ( b/163239764 , #103 )
Version 1.2.0-beta02
December 2, 2020
androidx.activity:activity:1.2.0-beta02
and androidx.activity:activity-ktx:1.2.0-beta02
are released. Version 1.2.0-beta02 contains these commits.
Исправления ошибок
- Fixed an issue where the Activity Result API would not wait for the Lifecycle to be
STARTED
before delivering results when registered with aLifecycle
. ( I109ea )
External Contribution
- Updated the documentation for
launch()
to explicitly call out that it can throw anActivityNotFoundException
. Thanks Michał Zieliński! ( aosp/1493580 )
Version 1.2.0-beta01
October 1, 2020
androidx.activity:activity:1.2.0-beta01
and androidx.activity:activity-ktx:1.2.0-beta01
are released. Version 1.2.0-beta01 contains these commits.
Исправления ошибок
The
ActivityResultRegistry
now randomly generates integers until it finds one that is unallocated to use as a request coderegister()
, thus preventing the possible integer overflow caused by incrementing request codes. ( b/168779518 )Lifecycle
observers are properly removed when callingunregister()
on anActivityResultLauncher
. ( b/165608393 )
Изменения поведения
- The
ActivityResultRegistry
now throws anIllegalStateException
when attempting to callregister()
with aLifecycleOwner
whoseLifecycle
has already reachedSTARTED
. ( b/165435866 )
Documentation Updated
-
ContextAware
documentation links toLifecycleOwner
to highlightLifecycle
callbacks as the appropriate place for creation and destruction events. ( aosp/1414152 )
Version 1.2.0-alpha08
19 августа 2020 г.
androidx.activity:activity:1.2.0-alpha08
and androidx.activity:activity-ktx:1.2.0-alpha08
are released. Version 1.2.0-alpha08 contains these commits.
Новые функции
-
ComponentActivity
now implementsContextAware
, allowing you to add one or moreOnContextAvailableListener
instances which will receive a callback before the baseActivity.onCreate()
. ( b/161390636 )- A suspending Kotlin extension
withContextAvailable()
allows you to run a non-suspending block when the Context becomes available and return a result. ( I8290c ) - This API is used by
FragmentActivity
in Fragment 1.3.0-alpha08 to restore the state of theFragmentManager
. Any listeners added to subclasses ofFragmentActivity
will run after that listener. ( I513da ) - This API is used by
AppCompatActivity
in AppCompat 1.3.0-alpha02 . Any listeners added to subclasses ofAppCompatActivity
will run after that listener. ( I513da )
- A suspending Kotlin extension
Исправления ошибок
- Fixed an issue with the
ActivityResultFragmentVersionDetector
Lint check that caused it to break when using Lint 27.1.0 or higher. ( b/162155191 )
Version 1.2.0-alpha07
July 22, 2020
androidx.activity:activity:1.2.0-alpha07
and androidx.activity:activity-ktx:1.2.0-alpha07
are released. Version 1.2.0-alpha07 contains these commits.
Новые функции
- Added a new
InvalidFragmentVersionForActivityResult
lint check that verifies that you are using Fragment1.3.0-alpha07
when using the Activity Result API , avoiding runtime crashes due to “invalid request code” issues and non-functioning permission requests caused by using older versions of Fragments. ( b/152554847 )
External Contribution
- Fixed an
ArrayIndexOutOfBoundsException
when parsing the results for theRequestPermission
Activity Result contract. ( I8f9e3 , b/161057605 )
Version 1.2.0-alpha06
June 10, 2020
androidx.activity:activity:1.2.0-alpha06
and androidx.activity:activity-ktx:1.2.0-alpha06
are released. Version 1.2.0-alpha06 contains these commits.
Новые функции
- You can now destructure the
ActivityResult
class in kotlin to directly access therequestCode
andintent
. ( b/157212935 ) -
ActivityResultLauncher
now allows you to get theActivityResultContract
that was used to register the launcher. ( b/156875743 )
API Changes
- Breaking change : The
invoke()
method onActivityResultRegistry
has been renamed toonLaunch()
. ( b/157496491 ) - The
OpenMultipleDocuments
contract now returns an empty list instead ofnull
to the registered callback if no result is returned. ( b/157348014 )
Version 1.2.0-alpha05
20 мая 2020 г.
androidx.activity:activity:1.2.0-alpha05
and androidx.activity:activity-ktx:1.2.0-alpha05
are released. Version 1.2.0-alpha05 contains these commits.
Новые функции
- Added support for
ViewTreeViewModelStoreOwner
from Lifecycle2.3.0-alpha03
, andViewTreeSavedStateRegistryOwner
from SavedState1.1.0-alpha01
when using aView
within aComponentActivity
. ( aosp/1297993 , aosp/1300264 )
API Changes
- The
TakePicture
contract now returns aboolean
indicating success rather than a thumbnailBitmap
as this was very rarely supported by camera apps when writing the image to the providedUri
. ( b/154302879 ) - The
invoke()
extensions onActivityResultLauncher
have been removed in favor of explicitly usinglaunch()
to better indicate that these are asynchronous operations. Kotlin extensions forlaunch
have been added to theandroidx.activity.result
package forActivityResultLauncher<Void>
andActivityResultLauncher<Unit>
that remove the need to pass innull
orUnit
, respectively, mirroring that behavior from the previouslyinvoke()
extensions. ( aosp/1304674 , aosp/1304675 ) - The
IntentSenderRequest.Builder
methods forsetFlagsMask()
andsetFlagsValues()
has been combined into a singlesetFlags()
method. ( aosp/1302111 )
Исправления ошибок
- When registering an
ActivityResultCallback
with aLifecycleOwner
, fixed an issue where the callback would be triggered before the state reachesSTARTED
. ( aosp/1309744 )
Изменения поведения
- The
ActivityResultRegistry
now generates request codes starting at0xFFFF
rather than at0
, preventing overlap when usingstartActivityForResult()
orrequestPermissions()
in an activity. ( aosp/1302324 )
Version 1.2.0-alpha04
April 29, 2020
androidx.activity:activity:1.2.0-alpha04
and androidx.activity:activity-ktx:1.2.0-alpha04
are released. Version 1.2.0-alpha04 contains these commits.
Новые функции
- Added a contract that can call startIntentSenderForResult to the ActivityResult APIs. ( b/153007517 )
API Changes
- The
prepareCall()
method has been renamed toregisterForActivityResult()
, both onComponentActivity
here and in Fragment1.3.0-alpha04
. ( aosp/1278717 ) - The
GetContents
,OpenDocuments
, andRequestPermissions
contracts have been renamed toGetMultipleContents
,OpenMultipleDocuments
, andRequestMultiplePermissions
, respectively. ( aosp/1280161 ) -
ComponentActivity
now implements theActivityResultRegisteryOwner
interface. ( aosp/1290888 ) - - The
startActivityForResult()
/onActivityResult()
andonRequestPermissionsResult()
APIs onComponentActivity
have been deprecated. Please use the Activity Result APIs . ( b/154751887 )
Исправления ошибок
- When using the
GetMultipleContents
andOpenMultipleDocuments
contracts and selecting a single item, it is now correctly returned to your callback. ( b/152941153 )
Version 1.2.0-alpha03
April 1, 2020
androidx.activity:activity:1.2.0-alpha03
and androidx.activity:activity-ktx:1.2.0-alpha03
are released. Version 1.2.0-alpha03 contains these commits.
Новые функции
- Added the
TakeVideo
,PickContact
,GetContent
,GetContents
,OpenDocument
,OpenDocuments
,OpenDocumentTree
, andCreateDocument
contracts to the set of pre-built contracts provided byActivityResultContracts
. ( aosp/1262482 , aosp/1266916 , aosp/1268960 ) - The Activity Result APIs now support launching an activity for result with an optional
ActivityOptionsCompat
. ( b/151860054 )
API Changes
- The
TakePicture
contract now takes aUri
input for where the image should be stored. The previous contract that does not take any input has been renamed toTakePicturePreview
. ( aosp/1262482 ) - The
registerActivityResultCallback()
method onActivityResultRegistry
has been renamed toregister()
. ( aosp/1267621 ) - The
dispose()
method onActivityResultLauncher
has been renamed tounregister()
and theunregisterResultCallback()
onActivityResultRegistry
has been removed. ( aosp/1267621 ) - The
createIntent()
method ofActivityResultContact
now takes aContext
in addition to the input to make it possible to create explicit Intents. ( aosp/1238800 ) - An
ActivityResultContract
can now overridegetSynchronousResult()
to deliver a result without callingstartActivityForResult
. This is used by theRequestPermission
andRequestPermissions
contracts to correctly deliver a 'granted' status if the requested permissions are already granted. ( b/151110799 ) - The previously available
Dial
contract has been removed as thatIntent
is not meant to be used withstartActivityForResult()
. ( aosp/1266916 ) - Many of the Activity Result APIs not meant to be extended are now
final
. This includesgetActivityResultRegistry()
, theprepareCall()
methods, all methods ofActivityResultRegistry
exceptinvoke()
, and a number of the default contracts that do not support optional extras. ( b/152439361 )
Исправления ошибок
- Fixed a
NullPointerException
inActivityResultRegistry
when attempting to deliver results to a callback that has not yet been re-registered after a configuration change;ActivityResultRegistry
now holds onto these pending results and delivers them when the callback is re-registered. ( b/152137004 )
Version 1.2.0-alpha02
18 марта 2020 г.
androidx.activity:activity:1.2.0-alpha02
and androidx.activity:activity-ktx:1.2.0-alpha02
are released. Version 1.2.0-alpha02 contains these commits.
Новые функции
- ActivityResultRegistry :
ComponentActivity
now provides anActivityResultRegistry
that lets you handle thestartActivityForResult()
+onActivityResult()
as well asrequestPermissions()
+onRequestPermissionsResult()
flows without overriding methods in your Activity or Fragment, brings increased type safety viaActivityResultContract
, and provides hooks for testing these flows. See the updated Getting a Result from an Activity . ( b/125158199 )
Version 1.2.0-alpha01
March 4, 2020
androidx.activity:activity:1.2.0-alpha01
and androidx.activity:activity-ktx:1.2.0-alpha01
are released. Version 1.2.0-alpha01 contains these commits.
Новые функции
- Added support for the
ViewTreeLifecycleOwner.get(View)
API added in Lifecycle2.3.0-alpha01
such that it will return the Activity as theLifecycleOwner
for any Views directly added to the Activity. ( aosp/1182955 )
Исправления ошибок
- Fixed a regression introduced in Activity
1.1.0
when running on older versions of the platform whereonBackPressed()
would cause anIllegalStateException
due to a bug in theandroid.app.FragmentManager
. ( b/146290338 )
Version 1.1.0
Version 1.1.0
January 22, 2020
androidx.activity:activity:1.1.0
is released. Version 1.1.0 contains these commits .
Important changes since 1.0.0
- Lifecycle ViewModel SavedState Integration :
SavedStateViewModelFactory
is now the default factory used when usingby viewModels()
, theViewModelProvider
constructor, orViewModelProviders.of()
with aComponentActivity
or its subclasses.
Version 1.1.0-rc03
December 4, 2019
androidx.activity:activity:1.1.0-rc03
and androidx.activity:activity-ktx:1.1.0-rc03
are released. Version 1.1.0-rc03 contains these commits .
Dependency changes
- Activity now depends on Lifecycle
2.2.0-rc03
and Lifecycle ViewModel SavedState1.0.0-rc03
.
Version 1.1.0-rc02
7 ноября 2019 г.
androidx.activity:activity:1.1.0-rc02
and androidx.activity:activity-ktx:1.1.0-rc02
are released. Version 1.1.0-rc02 contains these commits .
Dependency changes
- Activity now depends on lifecycle
2.2.0-rc02
.
Version 1.1.0-rc01
October 23, 2019
androidx.activity:activity:1.1.0-rc01
and androidx.activity:activity-ktx:1.1.0-rc01
are released with no changes from 1.1.0-beta01
. Version 1.1.0-rc01 contains these commits .
Version 1.1.0-beta01
October 9, 2019
androidx.activity:activity:1.1.0-beta01
and androidx.activity:activity-ktx:1.1.0-beta01
are released. Version 1.1.0-beta01 contains these commits .
Dependency changes
- Activity now depends on SavedState 1.0.0 stable.
Version 1.1.0-alpha03
September 5, 2019
androidx.activity:activity:1.1.0-alpha03
and androidx.activity:activity-ktx:1.1.0-alpha03
are released. The commits included in this version can be found here .
New features
- Activity now depends on Core 1.1.0 stable.
Bug fixes
- Activity now depends on Lifecycle
2.2.0-alpha04
.
Version 1.1.0-alpha02
August 7, 2019
androidx.activity:activity:1.1.0-alpha02
and androidx.activity:activity-ktx:1.1.0-alpha02
are released. The commits included in this version can be found here .
New features
-
SavedStateViewModelFactory
is now the default factory used when usingby viewModels()
, theViewModelProvider
constructor, orViewModelProviders.of()
with aComponentActivity
( b/135716331 )
Version 1.1.0-alpha01
2 июля 2019 г.
androidx.activity:activity:1.1.0-alpha01
and androidx.activity:activity-ktx:1.1.0-alpha01
are released. The commits included in this version can be found here .
New features
-
activity
now depends on Lifecycle2.2.0-alpha02
. ( aosp/1007817 ) -
activity-ktx
added a dependency onlifecycle-runtime-ktx
; you no longer need to explicitly add it to your dependencies when usingactivity-ktx
or libraries that depend onactivity-ktx
(such asfragment-ktx
). ( aosp/987162 )
Версия 1.0.0
Версия 1.0.0
September 5, 2019
androidx.activity:activity:1.0.0
and androidx.activity:activity-ktx:1.0.0
are released. The commits included in this version can be found here .
Major Features of 1.0.0
- ComponentActivity :
ComponentActivity
serves as the new base class forFragmentActivity
in Fragment1.1.0
and, by extension,AppCompatActivity
in AppCompat1.1.0
. - activity-ktx : The
activity-ktx
module includes aby viewModels
Kotlin property extension for accessing ViewModels. This module is automatically included when you includefragment-ktx
from Fragment1.1.0
. - OnBackPressedDispatcher : As a composable alternative to overriding
onBackPressed()
, you can now register aOnBackPressedCallback
from anyLifecycleOwner
(such as a fragment) to intercept system back button events. A lambda with receiver versionaddCallback
has been added toactivity-ktx
. See Provide custom back navigation documentation for more details. - onRetainCustomNonConfigurationInstance deprecation : the
onRetainCustomNonConfigurationInstance()
and the relatedgetLastCustomNonConfigurationInstance()
APIs have been deprecated. It is strongly recommended to use ViewModels to store non-configuration state as they offer a composable solution suitable for anyViewModelStoreOwner
that makes the ownership of the retained objects clear and provides anonCleared()
callback for cleaning up resources when the activity is finally destroyed.
Version 1.0.0-rc01
2 июля 2019 г.
androidx.activity:activity:1.0.0-rc01
and androidx.activity:activity-ktx:1.0.0-rc01
are released with no changes from 1.0.0-beta01
. The commits included in this version can be found here .
Version 1.0.0-beta01
5 июня 2019 г.
androidx.activity::activity:1.0.0-beta01
and androidx.activity:activity-ktx:1.0.0-beta01
are released with no changes from 1.0.0-alpha08
. The commits included in this version can be found here .
Version 1.0.0-alpha08
7 мая 2019 г.
androidx.activity:activity:1.0.0-alpha08
and androidx.activity:activity-ktx:1.0.0-alpha08
are released. The commits included in this version can be found here .
API changes
- Breaking change: The previously deprecated
addOnBackPressedCallback
andremoveOnBackPressedCallback
methods onComponentActivity
have been removed. aosp/953857 - The
setEnabled()
andisEnabled()
methods ofOnBackPressedCallback
are now final. b/131416833 - The
remove()
method ofOnBackPressedCallback
is now final. aosp/952720 -
OnBackPressedDispatcher
now has public constructors, allowing you to construct your own instances for testing, etc. aosp/953431 -
onBackPressed()
forComponentActivity
is now explicitly marked as@MainThread
aosp/952721
Bug fixes
- Fixed a
ConcurrentModificationException
when callingremove()
from within thehandleOnBackPressed()
method of aOnBackPressedCalback
that was added with aLifecycleOwner
. b/131765095
Version 1.0.0-alpha07
April 25th, 2019
androidx.activity:activity:1.0.0-alpha07
and androidx.activity:activity-ktx:1.0.0-alpha07
are released. The commits included in this version can be found here .
API changes
This release makes significant changes to the handling of the onBackPressed()
. See the updated custom back documentation for more details.
- The methods for
OnBackPressedCallback
andOnBackPressedDispatcher
have been marked as@MainThread
. ( aosp/943813 ) - The
handleOnBackPressed()
method no longer returns aboolean
. Instead,OnBackPressedCallback
is now an abstract class that can be enabled or disabled - only when the newisEnabled()
method returns true willhandleOnBackPressed()
be called, in which you must handle the back button. ( aosp/944518 ) - The
addCallback
methods ofOnBackPressedDispatcher
no longer return aCancellable
instance.OnBackPressedCallback
now contain aremove()
method that fulfill this functionality, allowing you to callremove()
duringhandleOnBackPressed()
. ( aosp/944519 ) ( aosp/946316 ) -
activity-ktx
now contains a receiver scoped callback foraddCallback
that accepts a lamdba that implementshandleOnBackPressed()
and has access toisEnabled
andremove()
( aosp/944520 )
Version 1.0.0-alpha06
April 3rd, 2019
androidx.activity:activity:1.0.0-alpha06
and androidx.activity:activity-ktx:1.0.0-alpha06
are released. The commits included in this version can be found here .
API changes
- ComponentActivity now contain a second constructor that takes a
@LayoutRes int
, which replaces the previous behavior of annotating your AppCompatActivity class with@ContentView
. This approach works in both app and library modules. ( b/128352521 ) - The
OnBackPressedCallback
related APIs on ComponentActivity have been deprecated in favor of the newOnBackPressedDispatcher
, retrievable viagetOnBackPressedDispatcher()
. ( aosp/922523 ) - Methods to add a new
OnBackPressedCallback
to theOnBackPressedDispatcher
now return aCancellable
object, allowing removal of the callback without requiring an explicit reference to theOnBackPressedDispatcher
. ( aosp/922523 ) - Adding a
OnBackPressedCallback
with an associatedLifecycleOwner
now results in adding and removing theOnBackPressedCallback
as the Lifecycle is started and stopped, respectively. ( aosp/922523 )
Version 1.0.0-alpha05
March 13th, 2019
androidx.activity:activity:1.0.0-alpha05
and androidx.activity:activity-ktx:1.0.0-alpha05
are released. The full list of commits included in this release can be found here .
New features
-
@ContentView
annotation lookups are now cached ( b/123709449 )
Version 1.0.0-alpha04
30 января 2019 г.
androidx.activity:activity 1.0.0-alpha04
and androidx.activity:activity-ktx 1.0.0-alpha04
are released.
New features
- Added support for the
@ContentView
class annotation that allows you to indicate which layout XML file should be inflated as an alternative to usingsetContentView()
. ( aosp/837619 )
API changes
- Added a note that
getViewModelStore()
should not be overridden and will be made final in a future release. Please file a feature request if you are currently overriding this method. ( aosp/837619 )
Bug fixes
- The
activity
module now depends on version 2.1.0-alpha02 of ViewModel to match theactivity-ktx
module's dependency.
Version 1.0.0-alpha03
December 17, 2018
androidx.activity 1.0.0-alpha03
is released.
New features
- ComponentActivity now implements
BundleSavedStateRegistryOwner
and depends on the newly released SavedState library [ aosp/815133 ] - ComponentActivity now works around an Android framework bug that would cause InputMethodManager to leak the last focused view [ b/37122102 ]
Version 1.0.0-alpha02
December 3, 2018
API changes
- Added a note that
getLifecycle()
should not be overridden and will be madefinal
in a future release. Please file a feature request if you are currently overriding this method. ( aosp/815834 )
Version 1.0.0-alpha01
November 5, 2018
androidx.activity 1.0.0-alpha01
introduces ComponentActivity
, a new base class of the existing FragmentActivity
and AppCompatActivity
.
New features
- You can now register an
OnBackPressedCallback
viaaddOnBackPressedCallback
to receiveonBackPressed()
callbacks without needing to override the method in your activity. - Added a new
by viewModels()
Kotlin property delegate for retrievingViewModel
s from aComponentActivity
. - Pending input events (such as clicks) are now canceled in
onStop()
.
API changes
- The implementation of
LifecycleOwner
andViewModelStoreOwner
have been moved fromFragmentActivity
toComponentActivity
. -
onRetainCustomNonConfigurationInstance
has been deprecated. Use aViewModel
for storing objects that need to survive configuration changes.