page.title=Обзор ресурсов @jd:body
Необходимо обязательно экспортировать ресурсы, такие как изображения и строки, из кода приложения, чтобы можно было обрабатывать их независимо. Кроме того, экспорт ресурсов позволяет предоставлять альтернативные ресурсы для поддержки конфигураций конкретных устройств, например, различные языки или размеры экранов. Значение этого возрастает по мере того, как появляется все больше устройств Android с разными конфигурациями. Чтобы обеспечить совместимость с различными конфигурациями, необходимо организовать ресурсы в каталоге {@code res/} проекта с использованием различных подкаталогов для группирования ресурсов по типу и конфигурации.
Рисунок 1. Два разных устройства, каждое из которых использует макет по умолчанию (приложение не предоставляет альтернативных макетов).
Рисунок 2. Два разных устройства, каждое из которых использует свой макет, разработанный для экранов разных размеров.
Для ресурсов любого типа можно указать ресурс по умолчанию и несколько альтернативных ресурсов для приложения:
Например, несмотря на то, что макет пользовательского интерфейса по умолчанию сохранен в каталоге {@code res/layout/}, можно указать другой макет для использования на экране с альбомной ориентацией, сохранив его в каталоге {@code res/layout-land/} . Android автоматически применяет соответствующие ресурсы, сопоставляя текущую конфигурацию устройства с именами каталогов ресурсов.
На рисунке 1 показано, как система применяет одинаковый макет для двух разных устройств, когда альтернативные ресурсы отсутствуют. На рисунке 2 показано то же приложение, когда для больших экранов добавлен альтернативный ресурс макета.
В следующих документах содержится полное руководство по организации ресурсов приложения, указания альтернативных ресурсов, доступа к ним из приложения и т. д.: