Короткий ответ: DPI в описании файла — это плотность экрана, под которую подобраны картинки и иконки приложения. Пометка nodpi означает, что в файле есть ресурсы для всех экранов, и такой вариант подходит любому устройству.
Коротко
- Плотность экрана — это число точек на дюйм. Чем она выше, тем чётче изображение и тем крупнее нужны исходные картинки.
- Android делит экраны на группы: mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi.
- Файл под конкретную плотность меньше по размеру, файл nodpi — универсальный.
- Если поставить вариант под другую плотность, приложение обычно работает, но иконки могут выглядеть размыто или крупно.
Группы плотности
- ldpi — около 120 dpi, очень старые устройства.
- mdpi — около 160 dpi, базовая плотность, недорогие планшеты.
- tvdpi — около 213 dpi, часть телевизоров.
- hdpi — около 240 dpi, бюджетные телефоны прошлых лет.
- xhdpi — около 320 dpi, телефоны с HD-экранами.
- xxhdpi — около 480 dpi, большинство современных телефонов с экраном Full HD.
- xxxhdpi — около 640 dpi, флагманы с экранами 2K и выше.
Запись вида «120-640dpi» у файла означает, что внутри есть ресурсы для всего этого диапазона, то есть вариант тоже универсальный.
Как выбрать вариант
- Если есть nodpi или диапазон — берите его: такой файл подойдёт на любой экран.
- Если есть только варианты под конкретную плотность — узнайте плотность своего экрана. Её показывают приложения вроде CPU-Z или Device Info (строка «Density»), а через adb — команда
adb shell wm density. - Сопоставьте число с группой. Например, 440 dpi ближе всего к xxhdpi (480), 560 dpi — к xxxhdpi (640).
- Не угадали — не страшно. Android возьмёт ближайшие доступные ресурсы и растянет их. Если картинка не устраивает, установите вариант с правильной плотностью поверх — подпись у них одна.
Почему у одной версии несколько файлов
Google Play отдаёт каждому устройству только нужные ресурсы. Сторонние источники, чтобы файлы были меньше, тоже публикуют их отдельно под разные плотности и архитектуры. Для XAPK и APKS выбор ещё проще: установщик сам поставит ресурсы, подходящие экрану, если они есть в архиве.
Как это выглядит на AndroidSoft
В карточке каждого файла на странице приложения указана плотность — например, nodpi или 480dpi — рядом с форматом, размером, требованием Android и архитектурой. Рядом стоит ссылка на эту инструкцию. Значение берётся у источника без изменений; если источник его не указывает, поле скрыто.
Кнопка скачивания привязана к выбранному варианту файла. Если его проверенная копия уже готова, она откроется для загрузки из внешнего хранилища; если ещё нет, появится статус подготовки или недоступности.
Вопросы и ответы
Влияет ли DPI на работу приложения?
На функции — нет. Плотность влияет только на то, какие версии картинок используются, то есть на чёткость и размер элементов интерфейса.
Можно ли изменить плотность экрана в настройках?
Пункт «Размер элементов» или «Масштаб интерфейса» меняет логическую плотность, но выбирать файл лучше по заводскому значению экрана.
Что выбрать для планшета или телевизора?
Надёжнее всего nodpi. Если его нет, для планшетов обычно подходят xhdpi, для телевизоров — tvdpi или xhdpi.