Реальные устройства Android xxx-hdpi

Я собираюсь выпустить свое приложение, это apk 1.2Mb, который включает около 120 значков в 4 разных форматах (ldpi, mdpi, hdpi, x-hdpi).

Если я добавляю значки xx-dpi и xxx-hdpi, apk растет и время загрузки увеличивается.
Существует множество устройств начального уровня с действительно памятью loooow, и я бы хотел, чтобы мое приложение запускалось повсюду.

Мне действительно нужно добавить xx-hdpi?

И есть ли реальное устройство, которое требует xxx-hdpi?

Solutions Collecting From Web of "Реальные устройства Android xxx-hdpi"

Вам не нужно действительно xxxhdpi . Он был введен только из-за того, как иконки пусковой установки масштабируются на пусковой установке Nexus 5

Редактировать Назад, когда я ответил в январе 2014 года, Nexus 5 был единственным устройством, использующим xxxhdpi . В настоящее время многие устройства, включая Nexus 6 и LG G3, используют его. Поэтому было бы неплохо включить его в ваше приложение.

Нам пришлось добавить xxxhdpi в наше приложение для Nexus 6, LG G3 и Samsung Galaxy Note 4. В будущем будет больше устройств xxxdhpi.

Вам не нужен ldpi, потому что Android уменьшает hdpi до ldpi.

Из https://developer.android.com/design/style/iconography.html

Примечание. Android также поддерживает экраны с низкой плотностью (LDPI), но вам обычно не нужно создавать настраиваемые активы такого размера, потому что Android эффективно уменьшает ваши активы HDPI на 1/2, чтобы соответствовать ожидаемому размеру.

Из самой документации иконописи Android:

Некоторые устройства масштабируют значок запуска на целых 25%. Например, если изображение пиктограммы с наивысшей плотностью запуска еще слишком велико, то процесс масштабирования будет казаться менее четким. Поэтому в каталоге drawable-xxxhdpi, который используется системой, вместо масштабирования меньшей версии значка, вы должны предоставить значок с более высокой плотностью запуска.

Примечание: квалификатор drawable-xxxhdpi необходим только для того, чтобы предоставить значок запуска, который может казаться больше обычного на устройстве xxhdpi. Вам не нужно предоставлять ресурсы xxxhdpi для всех изображений вашего приложения.

Дальше: http://developer.android.com/design/style/iconography.html

Для большинства ваших изображений вам не требуется xxxhpdi. Вам нужно только xxxhdpi для вашего значка запуска. См. http://developer.android.com/guide/practices/screens_support.html.

Вы не должны использовать квалификатор xxxhdpi для элементов пользовательского интерфейса, отличных от значка запуска.

В приведенной выше цитате довольно ясно. В приведенном ниже примере макета папки они отображают все плотности для res/drawable folders до -xxhdpi , но затем они отображают папки res/mipmap до -xxxhdpi . Вот еще цитаты:

xxxhdpi Ресурсы для сверх-сверх-высокой плотности (xxxhdpi) используют (~ 640 точек на дюйм). Используйте это только для значка запуска, см. Примечание выше.

Спецификатор mipmap-xxxhdpi необходим только для того, чтобы предоставить значок запуска, который может отображаться больше, чем обычно, на устройстве xxhdpi. Вам не нужно предоставлять ресурсы xxxhdpi для всех изображений вашего приложения.

Я не знаю, есть ли устройство, для которого требуется xxx-hdpi, но xx-hdpi еще не используется очень часто. Но то же самое относится и к ldpi, почти не требуется устройство ldpi. Если вы просто сделаете mdpi, hdpi и xhdpi, все будет хорошо. Если устройство требует чего-то большего или меньшего размера, он просто масштабирует его до нужного размера.

Вот что говорит Android об этом:

Предоставлять различные рисунки растровых изображений для различных плотностей экрана

По умолчанию Android масштабирует ваши рисунки растровых изображений (.png, .jpg и .gif) и Nine-Patch drawables (файлы .9.png), чтобы они отображались с соответствующим физическим размером на каждом устройстве. Например, если ваше приложение предоставляет растровые рисунки только для базовой линии, средней плотности экрана (mdpi), система затем масштабирует их на экране с высокой плотностью и масштабирует их на экране с низкой плотностью. Это масштабирование может вызвать артефакты в растровых изображениях. Чтобы ваши растровые изображения выглядели как можно лучше, вы должны включить альтернативные версии с разными разрешениями для разных плотностей экрана. Конфигурационными квалификаторами, которые вы можете использовать для ресурсов плотности, являются ldpi (low), mdpi (medium), hdpi (high) и xhdpi (extra high). Например, растровые изображения для экранов с высокой плотностью должны идти в drawable-hdpi /.

Документацию можно найти здесь:

https://developer.android.com/guide/practices/screens_support.html

Надеюсь это поможет

Я думаю, вам стоит сосредоточиться на самых популярных плотностях экрана, которые являются hdpi, xhdpi и xxhdpi. См. Эту ссылку для текущего среднего по всему миру распределения каждой плотности.

Забудьте все и сделайте это просто!

Просто сохраняйте изображения с высоким разрешением только в одной папке. Либо в drawable-hdpi, и удалите другие изображения из остальных доступных папок.

Я тестировал его на разных устройствах, и он работает как шарм …