Save the date! Android Dev Summit is coming to Sunnyvale, CA on Oct 23-24, 2019.

Обзор ресурсов

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

Рисунок 1. Два разных устройства, каждое из которых использует макет по умолчанию (приложение не предоставляет альтернативных макетов).

Рисунок 2. Два разных устройства, каждое из которых использует свой макет, разработанный для экранов разных размеров.

Для ресурсов любого типа можно указать ресурс по умолчанию и несколько альтернативных ресурсов для приложения:

  • Ресурсы по умолчанию должны использоваться независимо от конфигурации устройства или в том случае, когда отсутствуют альтернативные ресурсы, соответствующие текущей конфигурации.
  • Альтернативные ресурсы предназначены для работы с определенными конфигурациями. Чтобы указать, что группа ресурсов предназначена для определенной конфигурации, добавьте соответствующий квалификатор к имени каталога.

Например, несмотря на то, что макет пользовательского интерфейса по умолчанию сохранен в каталоге res/layout/, можно указать другой макет для использования на экране с альбомной ориентацией, сохранив его в каталоге res/layout-land/ . Android автоматически применяет соответствующие ресурсы, сопоставляя текущую конфигурацию устройства с именами каталогов ресурсов.

На рисунке 1 показано, как система применяет одинаковый макет для двух разных устройств, когда альтернативные ресурсы отсутствуют. На рисунке 2 показано то же приложение, когда для больших экранов добавлен альтернативный ресурс макета.

В следующих документах содержится полное руководство по организации ресурсов приложения, указания альтернативных ресурсов, доступа к ним из приложения и т. д.:

Предоставление ресурсов
Типы ресурсов, которые можно предоставлять в приложении, место их сохранения и способы создания альтернативных ресурсов для определенных конфигураций устройств.
Доступ к ресурсам
Способ использования предоставленных ресурсов: путем ссылки на них из кода приложения или из других ресурсов XML.
Обработка изменений в режиме выполнения
Управление изменениями конфигурации во время выполнения операции.
Локализация
Руководство по локализации приложения «снизу вверх» с помощью альтернативных ресурсов. Хотя это лишь один из примеров использования альтернативных ресурсов, он очень важен для охвата более широкой аудитории пользователей.
Типы ресурсов
Ссылка на различные типы ресурсов, которые вы можете предоставлять, с описанием элементов XML, атрибутов и синтаксиса. Например, эта ссылка показывает, как создать ресурс для меню , рисунков, анимаций приложения и т. д.