- Tek Eye
- Reminder of Screen Densities
- Icon Sizes for Different Screen Densities
- Android Rounded Launcher Icons Sizes
- See Also
- Do you have a question or comment about this article?
- Русские Блоги
- Разница между android: icon и android: roundIcon в приложении
- 8.0 адаптация иконки системного приложения
- Зачем нужно адаптировать иконку приложения?
- 8.0 адаптация иконки системного приложения
- Придется ли мне адаптироваться?
- Создать новый проект
Tek Eye
When a new project is created in a recent version of Android Studio there are now two default launcher icons generated in the mipmap folders. There is ic_launcher.png and ic_launcher_round.png. The round version of the launcher icon was brought in for Android 7.0 (Nougat). New Android devices can implement the rounded launcher icon feature. The rounded launcher icons use the ic_launcher_round.png image, instead of the ic_launcher.png image. (These are the default file names and they can be changed.)
The launcher icon for an Android app is set in the manifest file, AndroidManifest.xml. The application node has the attribute:
This now means more PNG image resources need to be generated for an app. Launcher icons as before, plus another set for devices that have rounded icons support. Although round icons could be used previously, by using a round icon graphic. Now round icons are explicitly supported to match the interface for newer Android devices.
Reminder of Screen Densities
Before covering the size of Android launcher icons a summary on screen densities. Over the many years that Android has been around the pixel density of the screens that are supported has increased. The original baseline density was a screen with 160 dots per inch (dpi). Generally one dot on a device screen is known as a pixel (px), so 160 px per inch. Any screens around 160 dpi are referred to as medium density screens, a.k.a. mdpi screens. There are high density screens at around 240 dpi, or hdpi, and extra high density screens around 320 dpi, xhdpi. Then it gets a bit crazy with extra extra high density screens around 480 dpi, xxhdpi, and above that extra extra extra high density screens around 640 dpi, xxxhdpi. Older versions of Android supported a low density screen around 120 dpi, ldpi.
Icon Sizes for Different Screen Densities
Prior to the Image Asset utility in Android Studio (see the article Launcher Icon Generator in Android Studio) icons had to be made in graphics editing tools. An example of doing this using the free Inkscape program is given in the article Android Launcher Icons Using Inkscape. The Inkscape icon post was based on previous Google icon design guidelines. These stated that icons are sized as follows:
- 36×36 px icon in the res/mipmap-ldpi folder (optional) for low density displays (approx. 120 dpi)
- 48×48 px icon in the res/mipmap-mdpi folder for medium density displays (approx. 160 dpi)
- 72×72 px icon in the res/mipmap-hdpi folder for high density displays (approx. 240 dpi)
- 96×96 px icon in the res/mipmap-xhdpi folder for extra high density displays (approx. 320 dpi)
- 144×144 px icon in the res/mipmap-xxhdpi folder for extra extra high density displays (approx. 480 dpi)
- 192×192 px icon in the res/mipmap-xxxhdpi folder for extra extra extra high density displays (approx. 640 dpi)
These sizes included recommendations for a border which meant that the drawable area for the graphical content was smaller. The recommended border being one twelfth of the icon size. This means that the space the actual icon image occupies is smaller than the full icon size:
- For a 36×36 px icon the usable image space is 30×30 px.
- For a 48×48 px icon the usable image space is 40×40 px.
- For a 72×72 px icon the usable image space is 60×60 px.
- For a 96×96 px icon the usable image space is 80×80 px.
- For a 144×144 px icon the usable image space is 120×120 px.
- For a 192×192 px icon the usable image space is 160×160 px.
Android Rounded Launcher Icons Sizes
The advice on icon sizes in Android available from the Internet is not clear, due to the transition from the old versions of Android to the icon support in the latest Android versions. However, the above sizes remain valid. For the rounded launcher icon the overall sizes remain the same, but a circle is used. Therefore the diameters range from 48 px to 192 px. Then an inner circle is drawn inside that area, within a one twenty-forth margin from the edge. This means for the 48×48 px icon the circle has a diameter of 44 px, leaving a 2 px margin (48/24=2). The guidelines then recommend that either the entire circle is filled with an image or padding is used all around the image. Here are some Android examples:
Notice how a light drop shadow is also present. For the 48 px diameter icon the drop shadow is between the full outer circle and the inner 44 px image circle. The usable image space for the rounded icon, when not filling the entire inner circle, is similar to the square icon. Thus for the 48 px diameter icon the padded graphic area is a about 40 px in diameter max.
- Diameter 36 px, full graphic 32 px, a padded graphic upto 30 px, 2 px available for drop shadow. (The mipmap-ldpi folder is optional and not generated by the Asset Studio utility.)
- Diameter 48 px, full graphic 44 px, a padded graphic upto 40 px, 2 px available for drop shadow.
- Diameter 72 px, full graphic 66 px, a padded graphic upto 60 px, 3 px available for drop shadow.
- Diameter 96 px, full graphic 84 px, a padded graphic upto 80 px, 4 px available for drop shadow.
- Diameter 144 px, full graphic 132 px, a padded graphic upto 120 px, 6 px available for drop shadow.
- Diameter 192 px, full graphic 176 px, a padded graphic upto 160 px, 8 px available for drop shadow.
- One trick to avoid having to make two lots of icons is to make only the rounded set and then set both icon attributes in AndroidManifest.xml to the rounded version.
- When designing icons in graphical programs design on a big canvas and scale downwards. Don’t design at the small sizes otherwise the bigger icons become pixelated. The canvas needs to be at least as big as the biggest icon (192×192 px), but probably at least twice as big (384×384), and more for the Play store icon (512×512 px). Better still design using a vector based image package such as Inkscape.
- Icons are small on low density displays so keep the design simple and use plan shapes and contrasting colors.
See Also
Author: Daniel S. Fowler Published: 2017-04-22
Do you have a question or comment about this article?
(Alternatively, use the email address at the bottom of the web page.)
↓markdown↓ CMS is fast and simple. Build websites quickly and publish easily. For beginner to expert.
Free Android Projects and Samples:
Источник
Русские Блоги
Разница между android: icon и android: roundIcon в приложении
8.0 адаптация иконки системного приложения
Зачем нужно адаптировать иконку приложения?
Некоторые друзья могут растеряться. Значок приложения существует с древних времен Android, а функция чрезвычайно проста, достаточно поставить картинку. Что лучше всего подходит для этого? Но на самом деле в текущей среде Android функция значка приложения очень сбивает с толку.
Если мы хотим поговорить об истории значков приложений для мобильных телефонов, мы должны начать с Apple. В 1980-х годах, когда Apple еще разрабатывала компьютеры Lisa и Macintosh, Джобс был ярым сторонником закругленных прямоугольников. В то время инженеры Apple написали замечательный алгоритм, который может рисовать круги и эллипсы на компьютере. Все зрители были шокированы, кроме Джобса, потому что Джобс считал, что хотя круги и эллипсы тоже хороши, если бы они могли нарисовать полосу Еще лучше прямоугольник со скругленными углами. В то время инженер считал, что это невозможно, и что прямоугольники с закругленными углами не нужны вообще, если они соответствуют основным требованиям чертежа. Джобс злобно потащил его по трем улицам, указывал на различные примеры скругленных прямоугольников на улице, и, наконец, на следующий день инженер сделал функцию рисования скругленных прямоугольников.
Поэтому, когда в 2007 году родился iPhone, не все значки приложений былиНеожиданныйЗакругленные прямоугольные значки используются в земле, даже сторонние приложения вынуждены использовать закругленные прямоугольные значки, и это правило сохраняется до сегодняшней iOS 11, как показано на следующем рисунке:
Напротив, когда разрабатывалась система Android, ей не нравилась закрытость и принужденность Apple. Вместо этого она выбрала свободу и открытость и не выдвигала никаких обязательных требований к форме значка приложения. Разработчики могут выбирать:
Как видите, на Android значок приложения может быть квадратом, кругом, прямоугольником с закругленными углами или любой другой неправильной графикой.
Изначально это были разные дизайнерские концепции двух компаний, и трудно сказать, какая из них выше. Но поскольку операционная система Android имеет открытый исходный код, некоторые отечественные производители мобильных телефонов изменили эту функцию при настройке операционной системы. Например, мобильные телефоны Xiaomi решили приблизиться к Apple и заставить значки приложений округляться. Что делать, если значки некоторых приложений не являются прямоугольниками со скругленными углами? Система Xiaomi автоматически добавит к нему эффект закругленных углов, как показано на рисунке ниже:
Такой подход Xiaomi, похоже, учится у Apple, но на самом деле это довольно отвратительно. Поскольку каждый может видеть, что этот автоматически добавленный прямоугольник с закругленными углами очень уродлив, многие компании просто проектируют значки приложений в виде прямоугольников с закругленными углами, и бывает, что Android и iOS используют один и тот же набор значков, чтобы избежать проблем.
Но это огорчает Google. Разве это не изменение, которое заставляет разработчиков создавать значки в виде прямоугольников с закругленными углами? Поэтому на прошлогодней конференции Google I / O Google раскритиковал подход Xiaomi по имени, заявив, что он нарушает философию свободы и открытости Android.
В дополнение к обязательным закругленным углам значка приложения, необходимым для изменения направления, метод обработки Xiaomi имеет еще один недостаток, то есть, если закругленная дуга значка приложения отличается от той, которая требуется системой Xiaomi, произойдет необычно уродливый эффект:
Видеть такие значки приложений действительно неловко. Просто потому, что скругленные углы двух значков приложений предназначены для большего размера, чем закругленные углы, требуемые системой Xiaomi, такие уродливые белые границы добавляются автоматически.
Проблема уже существует, как ее решить? Если честно, это действительно проблема, которая долгое время была головной болью, и Google уже много лет закрывает на это глаза. Наконец, в системе Android 8.0 Google намерен внимательно изучить стандартизацию значков приложений Android, сегодня мы узнаем. Чтобы
8.0 адаптация иконки системного приложения
Эту проблему Google все еще довольно сложно решить. Поскольку Google делает упор на свободу и открытость, для Xiaomi также есть свобода людей заставлять все значки приложений округляться. Нарушает ли это понятие свободы и открытости, если вы запрещаете людям это делать? Конечно, мы здесь, чтобы обсудить это, как сначала обсудить курицу или яйцо, но Google все же нашел идеальное решение.
Начиная с системы Android 8.0, значки приложений разделены на два уровня: слой переднего плана и слой фона. Другими словами, когда мы разрабатываем значок приложения, нам нужно разделить передний план и фон. Передний план используется для отображения логотипа значка приложения, а фон используется для выделения логотипа значка приложения. Следует отметить, что фоновый слой может определять только цвета и текстуры, но не формы.
Так кто же определяет форму значка приложения? Google оставил это право производителям мобильных телефонов. Разве некоторые производители мобильных телефонов не любят изучать округлые значки Apple? Нет проблем, поскольку дизайн значка приложения разделен на два уровня, производителям мобильных телефонов нужно только нанести слой маски поверх этих двух слоев. Эта маска может быть прямоугольником со скругленными углами, кругом, квадратом и т. Д., В зависимости от конкретного производителя мобильного телефона. В зависимости от обстоятельств вы можете мгновенно сделать все значки приложений на телефоне одинаковыми. Принципиальная схема выглядит следующим образом:
Как видите, фоновый слой здесь представляет собой синюю карту сетки, а слой переднего плана — этоРобот AndroidИзображение логотипа, а затем покрыть слоем круглой маски и, наконец, вырезать круглый значок приложения. Чтобы
Придется ли мне адаптироваться?
Некоторые друзья могут подумать, что этот двухслойный дизайн значка приложения слишком громоздкий, может ли он быть неподходящим? Некоторые друзья могут также сказать, что их приложение не адаптировало значок приложения, и оно по-прежнему хорошо работает на телефонах Android 8.0.
Фактически, эта новая функция Google будет постепенно переходить к ней, а не навязывать ее всем разработчикам сразу. Если targetSdkVersion в вашем приложении ниже 26, то нет необходимости адаптировать значок приложения, и система Android 8.0 по-прежнему имеет обратную совместимость. Но если вы укажете targetSdkVersion равным 26 или выше, тогда система Android будет думать, что ваше приложение адаптировано к системе 8.0, что, конечно же, включает в себя адаптацию значка приложения.
Если вы укажете targetSdkVersion равным 26, но не адаптируете значок приложения в системе Android 8.0, какой эффект это будет иметь? Вот несколько отрицательных примеров:
Это снимок экрана телефона Google Pixel с операционной системой Android 8.0. Как видите, значки этих двух приложений очень странные, изначально они были выполнены в виде прямоугольника с закругленными углами, но снаружи расположен белый кружок. Почему так происходит? Это потому, что эти два приложения указали targetSdkVersion на значение выше 26, но они не адаптировали значок приложения в системе 8.0, а маска, установленная телефоном Pixel, является круговой, поэтому она автоматически устанавливается на внешнем слое значка приложения. Белый круг.
Видно, что приложения iQiyi и Ele.me не тестировались на совместимость с Pixel. Однако, учитывая, что они предоставляют услуги только на внутреннем рынке, они такжепростительный。
Конечно, скоро начнется популяризация домашних мобильных телефонов Android 8.0. Я считаю, что никто не хотел бы, чтобы их приложение имело указанные выше эффекты, поэтому давайте начнем конкретно изучать, как адаптировать значки приложений в системе 8.0. . Чтобы
Создать новый проект
Если меня кто-то спросит, сложно ли адаптировать иконку системного приложения 8.0? Отвечу здесь, это совсем не сложно. Я считаю, что каждый, кто прочитал эту статью, может сразу ее изучить, но при этом предполагается, что вам нужен хороший инструмент — Android Studio 3.0 или выше.
Рад сообщить, что в Android Studio 3.0 встроена функция адаптации значков системных приложений 8.0. Если вы установили Android Studio 3.0, поздравляю, у вас все получилось на 90%. Если вы все еще используете старую версию Android Studio, быстро перейдите и обновитесь, а затем прочтите эту статью.
Итак, теперь мы используем Android Studio 3.0 для создания нового проекта, назовем его IconTest.
Источник