Jetpack – это набор библиотек, которые позволяют разработчикам следовать рекомендациям, сокращать объем шаблонного кода и создавать приложения и игры, которые будут стабильно работать на любых устройствах Android, независимо от версии ОС и типа устройства. Благодаря возможностям этого пакета вы сможете сосредоточиться на написании основного кода.
Jetpack Compose
Современный набор инструментов для создания нативного пользовательского интерфейса, который позволяет упростить и ускорить разработку интерфейса на Android.

Зачем использовать Android Jetpack

Библиотеки Android Jetpack созданы с учетом современных принципов проектирования. Они позволяют снизить количество сбоев и утечек памяти, а также обеспечивают обратную совместимость.
Android Jetpack берет на себя рутинные задачи, такие как управление фоновыми процессами, навигацией и жизненным циклом объекта activity, чтобы вы могли сосредоточиться на создании отличного приложения.
Библиотеки, которые стабильно работают на любых устройствах Android, независимо от версии ОС, упрощают разработку.
Библиотеки Jetpack, такие как androidx.compose.material3.adaptive.layout, упрощают разработку адаптивных макетов, оптимизированных для всех размеров экрана.

Как использовать Jetpack

Изучите основные библиотеки Jetpack на курсе "Основы Android с Compose" и сократите количество стандартного кода в своем приложении
Познакомьтесь с тремя библиотеками Jetpack, которые упрощают работу с уровнем данных: LiveData, ViewModel и Room.
Узнайте, как современная архитектура Android реализована в реальном приложении

* Популярные и часто используемые библиотеки указаны первыми.

activity *Доступ к составным API, созданным на основе Activity.
Адаптивные компоненты Material Design 3 Создание адаптивных интерфейсов с помощью компонентов Material Design 3.
appcompat *Обеспечивает доступ к новым API в старых версиях API платформы (многие из них используют Material Design).
appsearch *Создавайте собственные функции поиска в приложении для пользователей.
камера *Создавайте приложения для мобильных камер.
compose *Определяйте интерфейс программно с помощью composable-функций, которые описывают его форму и зависимости данных.
databinding *Связывайте компоненты интерфейса в макетах с источниками данных в приложении, используя декларативный формат.
fragment *Разделите приложение на несколько независимых экранов, размещенных в рамках одного действия.
hilt *Расширьте функциональность Dagger Hilt, чтобы включить внедрение зависимостей определенных классов из библиотек androidx.
lifecycle *Создавайте компоненты, учитывающие жизненный цикл, которые могут корректировать поведение в зависимости от текущего состояния жизненного цикла объекта activity или фрагмента.
Компоненты Material Design * Модульные и настраиваемые компоненты интерфейса Material Design для Android.
navigation *Создавайте и структурируйте интерфейс приложения, обрабатывайте ссылки на контент и переходите между экранами.
paging *Загружайте данные на страницы и представляйте их в RecyclerView.
room *Создавайте, храните и управляйте постоянными данными, поддерживаемыми базой данных SQLite.
room3 *Создавайте, храните и управляйте постоянными данными, поддерживаемыми базой данных SQLite.
test *Тестирование на Android.
работа *Планируйте и выполняйте фоновые задачи, которые можно отложить и которые зависят от ограничений.
a2uiРендерер Jetpack Compose Agent-to-UI (A2UI) реализует протокол A2UI, позволяя ИИ-агентам генерировать интерактивные пользовательские интерфейсы, которые отрисовывают нативные компоненты Compose без выполнения произвольного кода.
a2ui.composeРендерер Jetpack Compose Agent-to-UI (A2UI) реализует протокол A2UI, позволяя ИИ-агентам генерировать интерактивные пользовательские интерфейсы, которые отрисовывают нативные компоненты Compose без выполнения произвольного кода.
объявленияПолучите рекламный идентификатор с сервисами Google Play или без них.
annotation.keepTODO
annotationПредоставлять метаданные, которые помогают инструментам и другим разработчикам понимать код вашего приложения.
appfunctionsПозволяет приложениям делиться функциями и данными с ИИ-помощниками, чтобы те могли находить и выполнять задачи прямо на устройстве по запросу пользователя.
arch.coreВспомогательный инструмент для других зависимостей архитектуры, включая правила тестирования JUnit, которые можно использовать с LiveData.
asynclayoutinflaterИспользуйте асинхронную загрузку макетов, чтобы избежать задержек в интерфейсе.
автозаполнениеПовысьте точность автозаполнения, расширив подсказки.
контрольный показательТочно измеряйте производительность кода в Android Studio.
biometricВыполняйте аутентификацию с помощью биометрических данных или учетных данных устройства и проводите криптографические операции.
BluetoothИспользуйте функции Bluetooth платформы Android с обратно совместимыми API.
браузерПоказывать веб-страницы в браузере по умолчанию.
camera.featurecombinationqueryЗапрашивать возможности камеры.
camera.media3TODO
camera.viewfinderАвтономный видоискатель на основе Composable и View для камеры"
car-appКак создавать приложения на основе шаблонов для Android Auto и Android Automotive OS
cardviewРеализуйте шаблон карточки Material Design с закругленными углами и тенями.
collectionУменьшите объем памяти, занимаемый существующими и новыми небольшими коллекциями.
compose.animationСоздавать анимации в приложениях Jetpack Compose, чтобы улучшить пользовательский опыт.
compose.compilerПреобразуйте функции @Composable и включите оптимизацию с помощью плагина компилятора Kotlin.
compose.foundationСоздавайте приложения Jetpack Compose с помощью готовых блоков и расширяйте основу, чтобы создавать собственные элементы системы проектирования.
compose.materialСоздавайте интерфейсы Jetpack Compose с помощью готовых компонентов Material Design. Это точка входа более высокого уровня в Compose, предназначенная для предоставления компонентов, соответствующих описанным на сайте www.material.io.
compose.material3Создавайте интерфейсы Jetpack Compose с помощью компонентов Material Design 3 – следующего поколения Material Design. В Material 3 обновлены темы и компоненты, а также добавлены функции персонализации Material You, например динамические цвета. Все это позволяет создавать приложения, которые гармонично сочетаются с новым визуальным стилем Android 12 и системным интерфейсом.
compose.material3.adaptiveИспользуйте адаптивную библиотеку Material 3, чтобы создавать адаптивные интерфейсы, которые автоматически подстраиваются под конфигурации окон, например классы размеров окон или положения устройств. Библиотека предоставляет стандартные реализации каркаса и составные элементы для создания собственных решений.
compose.remote.foundationTODO
compose.remoteRemote Compose – это фреймворк для создания интерфейса на удаленных поверхностях.
compose.runtimeОсновные строительные блоки модели программирования и управления состоянием Compose, а также основная среда выполнения для плагина компилятора Compose.
compose.uiОсновные компоненты Compose UI, необходимые для взаимодействия с устройством, включая макет, рисование и ввод.
concurrentПеренесите задачи из основного потока с помощью сопрограмм и воспользуйтесь ListenableFuture.
constraintlayoutОтносительное позиционирование позволяет гибко настраивать положение и размер виджетов.
contentpagerЗагружайте и просматривайте данные ContentProvider в фоновом потоке.
coordinatorlayoutРазместите виджеты приложения верхнего уровня, такие как AppBarLayout и FloatingActionButton.
locationbutton
coreИспользуйте новейшие функции платформы и API, не забывая о поддержке старых устройств.
core.uwbВнедрите поддержку сверхширокополосной связи (СШП) на совместимых устройствах.
credentials Эта библиотека предоставляет унифицированный доступ к учетным данным пользователя. Это могут быть пароли, ключи доступа и федеративные учетные данные. Эта библиотека позволяет сделать вход в сервисы удобным и безопасным.
credentials.providereventsЭта библиотека предоставляет набор API, позволяющих поставщикам учетных данных участвовать в событиях поставщика, таких как передача учетных данных и изменение учетных данных сигнала.
credentials.registryЧтобы решить эти проблемы, мы добавляем новый механизм реестра, который позволяет приложению предоставлять цифровые удостоверения с обеспечением конфиденциальности. В общих чертах, приложение-поставщик будет предварительно регистрировать все свои цифровые удостоверения в Менеджере учетных данных. Когда Менеджер учетных данных получает запрос приложения на определенное цифровое удостоверение, он запускает сопоставление удостоверений и интерфейс выбора пользователя в изолированной среде.
cursoradapterПредоставьте данные Cursor виджету ListView.
customviewРеализуйте специальные представления.
datastoreАсинхронное, согласованное и транзакционное хранение данных, которое позволяет преодолеть некоторые недостатки SharedPreferences.
documentfile;Просмотр файла.
draganddropПринимать данные, перетаскиваемые из другого приложения или в пределах одного приложения, и показывать согласованную область перетаскивания.
drawerlayoutРеализуйте виджет панели навигации Material Design.
dynamicanimationСоздавайте плавные анимации с помощью API анимации на основе физики.
эмодзиОтображение эмодзи на современных и более старых устройствах.
emoji2Показывать эмодзи на текущих и более старых устройствах.
enterpriseСоздавайте приложения корпоративного уровня.
exifinterfaceЧтение и запись тегов EXIF графических файлов.
игрыИспользуйте Android Game SDK в своем приложении, чтобы выполнять сложные задачи, например синхронизацию кадров.
glance.adaptiveTODO
glanceСоздавайте макеты для удаленных поверхностей с помощью API в стиле Jetpack Compose.
glance.wearGlance Wear – это библиотека для создания виджетов для Wear OS.
графикаИспользуйте графические возможности в разных версиях платформы Android.
gridlayoutИспользуйте макет в виде сетки.
здоровьеСоздавайте эффективные приложения для здоровья, не зависящие от платформы.
health.connectПозволяет разработчикам читать и записывать данные о здоровье и физической активности пользователей.
heifwriterКодировать изображение или коллекцию изображений в формате HEIF с помощью доступных кодеков на устройстве Android.
inkВдохновляйте разработчиков на создание лучших приложений для стилуса. Снизить порог входа для разработчиков, чтобы они могли создавать высокопроизводительные и красивые приложения для рисования. Поддерживает рукописный ввод на Android и серверную JVM (в настоящее время поддерживается на Linux для x86_64).
inputУменьшите задержку ввода, прогнозируя будущие события MotionEvent.
interpolatorИспользуйте интерполяторы анимации на старых платформах.
javascriptengineВключите в приложении Android обработку JavaScript.
jetifierОтдельный инструмент, который переносит зависимости библиотеки от устаревшей библиотеки поддержки в эквивалентные зависимости AndroidX.
leanbackОтдельный инструмент, который переносит зависимости библиотеки от устаревшей библиотеки поддержки в эквивалентные зависимости AndroidX.
legacyЭтот артефакт и его классы устарели. Начиная с Android 8, из-за ограничений фоновой проверки этот класс больше не используется.
lintПроверки Lint для подтверждения использования Gradle API
loaderЗагружайте данные для интерфейса, которые сохраняются при изменении конфигурации.
localbroadcastmanagerЭтот артефакт и его классы устарели. Вместо этого используйте LiveData или реактивные потоки.
mediaПредоставлять доступ к медиаконтенту и элементам управления другим приложениям. Заменена библиотекой media3.
media3 *Поддержка библиотек для работы с медиаконтентом.
mediarouterПозволяет показывать и воспроизводить медиаконтент на удаленных устройствах-приемниках с помощью общего пользовательского интерфейса.
multidexРазвертывание приложений с несколькими DEX-файлами на устройствах с версией Android ниже 5.0.
показателиОтслеживайте и регистрируйте различные показатели времени выполнения для своего приложения.
navigation3 Navigation 3 – это новая библиотека навигации, предназначенная для работы с Compose.
navigationevent Библиотека Navigation Event предоставляет API, ориентированный на KMP, для обработки системного возврата, а также [предпросмотра для жеста "Назад"](/guide/navigation/custom-back/predictive-back-gesture).
paletteИзвлекайте из изображений репрезентативные цветовые палитры.
pdfБиблиотека для добавления в приложения функций просмотра PDF-файлов.
percentlayoutЭтот артефакт и его классы устарели. Используйте ConstraintLayout и связанные макеты.
эффективностьПредоставляет аннотации к исходному коду для оптимизации производительности.
photopickerЭта библиотека обеспечивает интеграцию со встроенным инструментом выбора фотографий для Compose и Android Views.
preferenceСоздавайте интерактивные экраны настроек без необходимости взаимодействовать с хранилищем устройства или управлять интерфейсом.
printПечатайте фотографии, документы и другие графические материалы и изображения из приложения.
privacysandbox.activityTODO
privacysandbox.adsЭта библиотека позволяет интегрировать Privacy Preserving API, которые входят в Privacy Sandbox для Android.
privacysandbox.pluginsПлагин Android Privacy Sandbox Sdk Library Gradle
privacysandbox.sdkruntimeЭта библиотека предоставляет компоненты для потребителей, поддерживающих SdkRuntime.
privacysandbox.toolsБиблиотека для использования функций Privacy Sandbox в Android.
privacysandbox.uiTODO
profileinstallerПозволяет библиотекам заранее заполнять трассировки компиляции, которые будут считываться ART.
recommendationПродвигать контент на главном экране Android TV Launcher.
recyclerviewПоказывайте большие наборы данных в интерфейсе, минимизируя использование памяти.
remotecallbackСоздайте оболочку, которая упростит разработчикам предоставление PendingIntent.
resourceinspectionПросматривайте атрибуты пользовательских представлений в инспекторе макетов Android Studio.
savedstateНапишите подключаемые компоненты, которые сохраняют состояние пользовательского интерфейса при завершении процесса и восстанавливают его при перезапуске процесса.
БезопасностьБезопасно управляйте ключами и шифруйте файлы и sharedpreferences.
sharetargetОбеспечьте обратную совместимость для использования ярлыков в качестве целей прямой отправки.
sliceПоказывайте элементы интерфейса на основе шаблонов за пределами приложения.
slidingpanelayoutРеализуйте шаблон интерфейса со скользящей панелью.
startupПростой и эффективный способ инициализации компонентов при запуске приложения.
sqliteРабота с локальными базами данных SQLite. По возможности используйте Room.
swiperefreshlayoutРеализуйте шаблон интерфейса "Проведите по экрану, чтобы обновить".
test.backupФреймворк для автоматического тестирования, который позволяет убедиться, что пользовательские данные и учетные данные аккаунта не будут утеряны при обновлении устройства и восстановлении из облака.
test.extTODO
test.uiautomatorФреймворк для функционального тестирования пользовательского интерфейса в разных приложениях
text-verticalTODO
textclassifierРаспознает в тексте разговоры, ссылки, выделения и другие подобные конструкции.
трассировкаЗапись событий трассировки в буфер трассировки системы.
transitionАнимируйте движение в пользовательском интерфейсе с помощью начального и конечного макетов.
tvПредоставляет разработчикам функции Compose и Material Design для создания приложений для телевизоров.
tvproviderПредоставлять каналы Android TV.
vectordrawableОтрисовка векторной графики.
versionedparcelableПредоставляет стабильный и компактный формат двоичной сериализации, который можно передавать между процессами или безопасно сохранять.
viewpagerПоказывайте представления или фрагменты в формате, который можно пролистывать. По возможности используйте viewpager2.
viewpager2Показывайте представления или фрагменты в формате, который можно пролистывать.
wearСоздавайте приложения для умных часов Wear OS by Google.
wear.composeСоздавайте приложения Jetpack Compose для устройств Wear OS, обеспечивая поддержку разных размеров устройств и жестов навигации.
wear.compose.remoteСоздавайте виджеты и другие элементы удаленного интерфейса для Wear OS, используя систему проектирования Material 3 Expressive.
wear.protolayoutЭта библиотека позволяет определить набор макетов пользовательского интерфейса и выражений, не связанных с пользовательским интерфейсом, для отображения/оценки на удаленных поверхностях.
wear.tilesСоздавайте приложения для умных часов Wear OS by Google.
wear.watchfaceСоздавайте приложения для умных часов Wear OS by Google.
wear.watchfacepushWatch Face Push позволяет приложению для Wear OS программно устанавливать циферблат на часы.
webgpuСовременный API графического процессора для графики и вычислений на Kotlin.
webkitРаботайте с современными WebView API на устройствах с Android 5 и более поздних версий.
windowПоддержка разных типов устройств, например складных.
window.extensions.coreОсновные API для расширений библиотеки Window Manager
xr.arcoreПереносите цифровой контент в реальный мир с помощью возможностей восприятия.
xr.composeДекларативно создавайте макеты пользовательского интерфейса, которые используют возможности Android XR.
xr.compose.material3Создавайте приложения с компонентами и макетами Material, которые адаптируются для XR
xr.glimmerСистема дизайна и набор инструментов пользовательского интерфейса для создания приложений Android XR
xr.projectedСоздавайте продукты, использующие уникальные возможности подключенных XR-устройств.
xr.runtimeЗапустите собственный сеанс дополненной реальности или 3D с помощью нашей нативной среды выполнения.
xr.scenecoreСоздавать граф сцены Android XR с 3D-контентом и управлять им.

Новости и видео