Начиная с Android 4.3 (Jelly Bean) мы теперь можем использовать res/mipmap
папки для хранения изображений «mipmap».
Например, Chrome для Android хранит свои значки в этих папках вместо обычных res/drawable
папок.
Чем эти изображения в формате MIPPAM отличаются от других известных изображений для рисования?
Я вижу, что в моем манифесте мы используем @mipmap/
классификатор вместо @drawable/
, который имеет смысл, учитывая имя папки ресурса:
<activity
android:name=".MipmapDemp"
android:icon="@mipmap/ic_launcher" />
Ссылки:
Документ API Android 4.3 содержит следующее:
Использование mip-карты в качестве источника для вашего растрового или растрового изображения - это простой способ обеспечить качественное изображение и различные масштабы изображения, что может быть особенно полезно, если вы ожидаете, что ваше изображение будет масштабироваться во время анимации.
В Android 4.2 (уровень API 17) добавлена поддержка mipmaps в классе Bitmap - Android меняет изображения mip в своем Bitmap, когда вы указали источник mipmap и включили setHasMipMap (). Теперь в Android 4.3 вы также можете включить mipmaps для объекта BitmapDrawable, предоставив актив mipmap и установив атрибут android: mipMap в файле ресурсов растрового изображения или вызвав hasMipMap ().
Я не вижу там ничего, что помогло бы мне понять.
Ресурсы XML Bitmap имеют android:mipMap
свойство:
Boolean. Включает или отключает подсказку mipmap. Смотрите setHasMipMap () для получения дополнительной информации. Значением по умолчанию является false.
Насколько я вижу, это не относится к значкам запуска.
Был задан вопрос о группах Google ( цель названия ресурса "mipmap" ?! ), на что Romain Guy ответил:
Полезно предоставить изображение с более высоким разрешением, которое обычно рассчитывается (например, на устройстве с поддержкой mdpi Launcher может захотеть, чтобы на значке большего размера hdpi отображались ярлыки больших приложений).
Я чувствую, что это почти имеет смысл, но не совсем.
Я все еще склонен пойти с продолжением Рэнди Сугианто:
Каковы преимущества этого? Есть ли какое-нибудь руководство, как использовать mipmaps, возможно, для лучших иконок запуска?
Конечно, в Википедии есть страница для «Mipmap» , которая относится к более старой методике, изобретенной в 1983 году, которую я не совсем могу связать с текущей реализацией Android.
Должны ли мы хранить все наши значки приложений в res/mipmap
папках в эти дни, и каковы рекомендации для этих изображений MipMap?
Обновление № 1
Вот пост в блоге, который пытается объяснить это немного.
Но изображение, использованное в этом посте, показывает, что выглядит как один файл с множеством логотипов. Это не то, что я вижу в папке Chrome MipMap.
mipmap-hdpi
Папка Chrome содержит три изображения. Одним из них является логотип Chrome, сам по себе.
Как ни странно, это 72х72, а не 48х48, что я ожидал увидеть.
Возможно, это все, что нужно для этого - нам просто нужно держать большие значки в папках mipmap?
Обновление № 2
В блоге разработчиков Android от 23.10.2014 снова подтверждается идея использования mipmap
папок для значков приложений:
Говоря о плотности экрана Nexus 6, автор пишет:
Рекомендуется размещать значки приложений в папках mipmap (не в папках drawable), поскольку они используются с разрешением, отличным от текущей плотности устройства. Например, значок приложения xxxhdpi можно использовать на панели запуска для устройства xxhdpi.
Обновление № 3
Обратите внимание, что Android Studio создает ic_launcher.png
значки в mipmap...
папках, а неdrawable...
папках, в которых Eclipse использовал их для создания.