Поддержка пакетов библиотек

Примечание. С выпуском библиотеки поддержки 28.0.0 библиотеки, упакованные в android.support, устарели и были заменены библиотеками Jetpack с индивидуальными версиями, упакованными как androidx. Первый выпуск библиотек Jetpack 1.0.0 обеспечивает паритет с библиотекой поддержки 28.0.0 и является отправной точкой для перехода на новую упаковку androidx.

Существующие библиотеки, упакованные в android.support, продолжат работать, но не будут получать обновления после версии 28.0.0 и не будут совместимы с новыми библиотеками Jetpack. Артефакты более ранних версий (27 и ниже), упакованные как android.support, останутся в Google Maven. Все новые артефакты будут упакованы в формате androidx и потребуют переноса из android.support в androidx.

Мы рекомендуем использовать библиотеки androidx во всех новых проектах. Также рекомендуем перенести существующие проекты, чтобы они продолжали получать исправления ошибок и другие улучшения библиотеки.

Библиотека поддержки Android содержит несколько пакетов библиотек, которые можно включить в приложение. Каждая из этих библиотек поддерживает определенный набор функций и версий платформы Android.

Чтобы использовать любую из перечисленных ниже библиотек, скачайте файлы библиотеки в установленный пакет Android SDK. Чтобы выполнить этот шаг, следуйте инструкциям по скачиванию библиотек поддержки в разделе Настройка библиотеки поддержки. Чтобы добавить в приложение определенную библиотеку поддержки, необходимо выполнить дополнительные действия. В конце каждого раздела ниже приведена важная информация о том, как включить библиотеку в приложение.

Примечание. Минимальная версия SDK для всех пакетов библиотеки поддержки – это уровень API 14. Некоторые пакеты требуют более высокого уровня API, как указано ниже.

Библиотеки поддержки версии 4

Эти библиотеки включают самый большой набор API по сравнению с другими библиотеками, в том числе поддержку компонентов приложений, функций пользовательского интерфейса, специальных возможностей, обработки данных, сетевых подключений и утилит программирования.

Подробную информацию о классах и методах, предоставляемых библиотеками поддержки версии 4, можно найти в пакете android.support.v4 в справочной документации по API.

Примечание. До версии 24.2.0 библиотеки поддержки существовала только одна библиотека поддержки v4. Эта библиотека была разделена на несколько модулей для повышения эффективности. Для обеспечения обратной совместимости, если вы укажете support-v4 в скрипте Gradle, в ваше приложение будут включены все модули версии 4. Однако, чтобы уменьшить размер приложения, мы рекомендуем указать только те модули, которые нужны вашему приложению.

Библиотека совместимости версии 4

Предоставляет оболочки совместимости для ряда API фреймворков, таких как Context.obtainDrawable() и View.performAccessibilityAction().

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:support-compat:28.0.0

Библиотека core-utils версии 4

Содержит ряд вспомогательных классов, например AsyncTaskLoader и PermissionChecker.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:support-core-utils:28.0.0

Библиотека core-ui версии 4

Реализует различные компоненты, связанные с интерфейсом, например ViewPager, NestedScrollView и ExploreByTouchHelper.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:support-core-ui:28.0.0

Библиотека media-compat v4

Переносит части фреймворка media, в том числе MediaBrowser и MediaSession.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:support-media-compat:28.0.0

Библиотека фрагментов версии 4

Добавлена поддержка инкапсуляции пользовательского интерфейса и функций с помощью фрагментов, позволяющая приложениям предоставлять макеты, которые адаптируются к устройствам с маленькими и большими экранами. Этот модуль зависит от compat, core-utils, core-ui и media-compat.

Примечание. Библиотека поддержки версии 13 содержит класс FragmentCompat. Класс v4 Fragment – это отдельный класс, в котором исправлены ошибки, добавленные в более поздних версиях платформы. Класс v13 FragmentCompat предоставляет совместимые прокладки для реализации фреймворка класса Fragment.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:support-fragment:28.0.0

Библиотека поддержки Multidex

Эта библиотека позволяет создавать приложения с несколькими исполняемыми файлами Dalvik (DEX). Приложения, в которых используется более 65 536 методов, должны поддерживать конфигурации multidex. Подробнее о том, как использовать конфигурацию multidex, см. в статье Создание приложений с более чем 64 000 методов.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:multidex:1.0.0

Библиотеки поддержки v7

Эти библиотеки предоставляют определенные наборы функций и могут быть включены в ваше приложение независимо друг от друга.

Библиотека v7 appcompat   Часть Android Jetpack.

Примечание. Библиотека appcompat перенесена в библиотеку AndroidX, которая является компонентом Android Jetpack. Посмотреть, как это работает, можно в демонстрационном приложении Sunflower.

Эта библиотека добавляет поддержку пользовательского интерфейса панели действий, шаблона проектирования. Эта библиотека поддерживает реализацию интерфейса пользователя в стиле Material Design.

Примечание. Эта библиотека зависит от библиотеки поддержки версии 4.

Вот некоторые из основных классов, включенных в библиотеку appcompat версии 7:

  • ActionBar – реализация панели действий, шаблона пользовательского интерфейса. Подробнее о том, как использовать панель действий…
  • AppCompatActivity – добавляет класс действий приложения, который можно использовать в качестве базового класса для действий, использующих панель действий из библиотеки поддержки.
  • AppCompatDialog – добавляет класс диалогового окна, который можно использовать в качестве базового класса для диалоговых окон с темами AppCompat.
  • ShareActionProvider – добавляет поддержку стандартизированного действия "Поделиться" (например, отправки по электронной почте или публикации в социальных сетях), которое можно включить в панель действий.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:appcompat-v7:28.0.0

Библиотека v7 cardview

Эта библиотека добавляет поддержку виджета CardView, который позволяет показывать информацию на карточках с единообразным внешним видом в любом приложении. Такие карточки полезны для реализации Material Design и широко используются в макетах для приложений на телевизорах.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:cardview-v7:28.0.0

Библиотека v7 gridlayout

После скачивания библиотек поддержки Android эта библиотека добавляет поддержку класса GridLayout, который позволяет размещать элементы интерфейса пользователя с помощью сетки прямоугольных ячеек. Подробную информацию об API библиотеки v7 gridlayout можно найти в пакете android.support.v7.widget в справочной документации по API.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:gridlayout-v7:28.0.0

Библиотека mediarouter v7

Эта библиотека содержит MediaRouter, MediaRouteProvider и связанные с ними медиаклассы, которые поддерживают Google Cast.

В целом API библиотеки MediaRouter версии 7 позволяют управлять маршрутизацией медиаканалов и потоков с текущего устройства на внешние экраны, колонки и другие устройства. Библиотека содержит API для публикации поставщиков медиамаршрутов, обнаружения и выбора целевых устройств, проверки статуса медиаконтента и т. д. Подробную информацию об API библиотеки mediarouter версии 7 можно найти в пакете android.support.v7.media в справочнике по API.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:mediarouter-v7:28.0.0

API библиотеки mediarouter версии 7, представленные в библиотеке поддержки версии 18, могут быть изменены в более поздних версиях библиотеки поддержки. В настоящее время мы рекомендуем использовать библиотеку только в связи с Google Cast.

Библиотека палитр версии 7

Библиотека поддержки палитры v7 включает класс Palette, который позволяет извлекать основные цвета из изображения. Например, музыкальное приложение может использовать объект Palette, чтобы извлечь основные цвета с обложки альбома и использовать их для создания карточки с названием песни.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:palette-v7:28.0.0

Библиотека v7 recyclerview

Библиотека recyclerview добавляет класс RecyclerView. Этот класс поддерживает виджет RecyclerView, который позволяет эффективно отображать большие наборы данных, предоставляя ограниченное окно элементов данных.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:recyclerview-v7:28.0.0

Библиотека поддержки предпочтений v7

Пакет preference предоставляет API для добавления объектов настроек, таких как CheckBoxPreference и ListPreference, чтобы пользователи могли изменять настройки интерфейса.

Библиотека Preference версии 7 добавляет поддержку интерфейсов, таких как Preference.OnPreferenceChangeListener и Preference.OnPreferenceClickListener, и классов, таких как CheckBoxPreference и ListPreference.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:preference-v7:28.0.0

Библиотека поддержки v8

Эта библиотека содержит определенные наборы функций и может быть включена в ваше приложение независимо от других библиотек.

Библиотека RenderScript версии 8

Эта библиотека добавляет поддержку вычислительной платформы RenderScript. Эти API входят в пакет android.support.v8.renderscript. Обратите внимание, что шаги по добавлению этих API в приложение сильно отличаются от шагов для других API библиотеки поддержки. Подробнее о том, как использовать эти API в приложении, можно узнать из руководства для разработчиков по RenderScript.

Примечание. Использование RenderScript с библиотекой поддержки поддерживается в Android Studio и сборках на основе Gradle. Библиотека RenderScript находится в папке build-tools/$VERSION/renderscript/.

Ниже приведен пример свойств скрипта сборки Gradle для этой библиотеки:

defaultConfig {
    renderscriptTargetApi 18
    renderscriptSupportModeEnabled true
}

Библиотека поддержки версии 13

Эта библиотека добавляет поддержку шаблона пользовательского интерфейса Fragment с классом FragmentCompat и дополнительными классами поддержки фрагментов. Дополнительную информацию о фрагментах можно найти в руководстве для разработчиков. Подробную информацию об API библиотеки поддержки версии 13 можно найти в пакете android.support.v13 в справочной документации по API.

Примечание. Библиотека фрагментов версии 4 предоставляет класс Fragment. Класс v4 Fragment – это отдельный класс, в котором исправлены ошибки, добавленные в более поздних версиях платформы. Класс v13 FragmentCompat предоставляет совместимые прокладки для реализации фреймворка класса Fragment.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:support-v13:28.0.0

Библиотека поддержки настроек версии 14

Пакет android.support.v14.preference содержит API, которые позволяют добавить поддержку интерфейсов настроек, таких как PreferenceFragment.OnPreferenceStartFragmentCallback и PreferenceFragment.OnPreferenceStartScreenCallback, а также классы, например MultiSelectListPreference и PreferenceFragment. Подробную информацию об API библиотеки поддержки настроек версии 14 можно найти в пакете preference в документации по API.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:preference-v14:28.0.0

Библиотека поддержки предпочтений версии 17 для телевизоров

Пакет android.support.v17.preference предоставляет API для создания интерфейсов настроек на телевизорах, в том числе поддержку интерфейса LeanbackListPreferenceDialogFragment.ViewHolder.OnItemClickListener и классов, таких как BaseLeanbackPreferenceFragment и LeanbackPreferenceFragment. Подробную информацию об API библиотеки поддержки предпочтений версии 17 можно найти в пакете preference в документации по API.

Для этого пакета требуется API уровня 17 или выше. Идентификатор зависимости для этой библиотеки в скрипте сборки Gradle выглядит следующим образом:

 com.android.support:preference-leanback-v17:28.0.0 

Библиотека Leanback версии 17

Пакет android.support.v17.leanback содержит API для создания пользовательских интерфейсов на телевизорах. Он предоставляет ряд важных виджетов для приложений на телевизоре. Вот некоторые из них:

  • BrowseFragment – фрагмент для создания основного макета для просмотра категорий и строк медиаконтента.
  • DetailsFragment – фрагмент-обертка для экранов с подробной информацией Leanback.
  • PlaybackOverlayFragment – подкласс DetailsFragment, предназначенный для показа элементов управления воспроизведением и связанного контента.
  • SearchFragment – фрагмент для обработки поисковых запросов. Фрагмент получает поисковый запрос пользователя и передает его в SearchResultProvider, предоставленный приложением. SearchResultProvider возвращает результаты поиска в SearchFragment, который преобразует их в RowsFragment.

Для этого пакета требуется API уровня 17 или выше. Идентификатор зависимости для этой библиотеки в скрипте сборки Gradle выглядит следующим образом:

com.android.support:leanback-v17:28.0.0

Библиотека VectorDrawable

Поддержка статической векторной графики.

Идентификатор зависимости для этой библиотеки в скрипте сборки Gradle выглядит следующим образом:

com.android.support:support-vector-drawable:28.0.0

Библиотека Animated Vector Drawable

Поддержка анимированной векторной графики.

Идентификатор зависимости для этой библиотеки в скрипте сборки Gradle выглядит следующим образом:

com.android.support:animated-vector-drawable:28.0.0

Библиотека поддержки аннотаций

Пакет Annotation содержит API, которые позволяют добавлять в приложения метаданные аннотаций.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:support-annotations:28.0.0

Библиотека поддержки дизайна

Пакет Design содержит API, которые позволяют добавлять в приложения компоненты и шаблоны Material Design.

Библиотека поддержки дизайна добавляет в приложения различные компоненты и шаблоны Material Design, такие как панели навигации, плавающие кнопки действий (FAB), уведомления и вкладки.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:design:28.0.0

Библиотека поддержки специальных вкладок

Пакет Custom Tabs содержит API, которые позволяют добавлять и настраивать специальные вкладки в приложениях.

Библиотека поддержки специальных вкладок добавляет поддержку различных классов, таких как Custom Tabs Service и Custom Tabs Callback.

Для этого пакета требуется уровень API 15 или выше. Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:customtabs:28.0.0

Библиотека поддержки процентов

Пакет Percent содержит API, которые позволяют добавлять в приложение параметры на основе процентных значений и управлять ими.

Примечание. С версии 26.0.0 библиотека Percent Support больше не поддерживается. Клиентам этого модуля следует перейти на новый виджет ConstraintLayout, который предоставляется как отдельный артефакт в SDK Manager.

Библиотека Percent Support добавляет поддержку интерфейса PercentLayoutHelper.PercentLayoutParams и различных классов, таких как PercentFrameLayout и PercentRelativeLayout.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:percent:28.0.0

Библиотека поддержки ExifInterface

Теги EXIF хранят информацию, например ориентацию, дату и время, сведения о камере и местоположении, непосредственно в файле JPEG или RAW. Класс ExifInterface поддерживает чтение информации Exif из файлов в формате JPEG и RAW (DNG, CR2, NEF, NRW, ARW, RW2, ORF, PEF, SRW и RAF), а также установку информации Exif в файлах изображений JPEG.

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:exifinterface:28.0.0

Библиотека поддержки рекомендаций приложений для телевизоров

Пакет App Recommendation содержит API, которые позволяют добавлять рекомендации контента в приложения, работающие на телевизорах.

В библиотеку приложений добавлена поддержка аннотаций, таких как ContentRecommendation.ContentMaturity, и различных классов, таких как ContentRecommendation и RecommendationExtender.

Для этого пакета требуется уровень API 21 или выше. Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:recommendation:28.0.0

Библиотека Wear UI

В этой библиотеке есть API для создания пользовательских интерфейсов приложений Wear. API, доступные в пакете android.support.wear.widget, заменяют соответствующие API в библиотеке поддержки Wearable.

Подробнее о том, как использовать библиотеку Wear UI…

Идентификатор зависимости скрипта сборки Gradle для этой библиотеки выглядит следующим образом:

com.android.support:wear:28.0.0