Android Studio 3.3 запрещает адаптивные иконки для версии SDK менее 26 - PullRequest
0 голосов
/ 14 января 2019

Только что обновлен с Android Studio 3.2.1 до 3.3. Ранее мой проект - SDK v28 - создавался без проблем, теперь я получаю эту ошибку сборки:

  • Что пошло не так: выполнение задачи не выполнено: «app: processDebugResources».

    Сбой связывания ресурсов Android C: \ app \ src \ main \ res \ mipmap-anydpi-v25 \ ic_launcher_round.xml: ошибка: Для элементов требуется версия SDK не менее 26.
    ошибка: не удалось связать файловые ресурсы.

Очевидно, у меня есть ресурс <adaptive-icon> в папке mipmap-anydpi-v25.

Итак, какая версия AS обрабатывает это правильно; 3.2.1 или 3.3? Должен ли я удалить свой значок v25? Я думал, что у Lollipop есть поддержка этого типа иконок ...

Ответы [ 3 ]

0 голосов
/ 19 января 2019

У меня была такая же проблема, причина в том, что я перепутал файлы вручную, но я не заметил этого до обновления. В моем случае после обновления до AS 3.3 конфликтующие файлы были:

  • вытяжка / ic_launcher_background.xml
  • рисуем-v24 / ic_launcher_foreground.xml

Хотя AS собирается без ошибок путем изменения min sdk "minSdkVersion 26" в app / build.gradle, это не практично для целей публикации. простое быстрое решение было:

  • создать пустой новый проект
  • копировать точно такие же файлы
  • и замените их в конфликтующем проекте
0 голосов
/ 31 июля 2019

Для меня в AS 3.4 мне пришлось:

Android Studio: File | Project Structure

enter image description here

У меня не получилось использовать добавить New | Изображение актива благодаря адаптивным значкам ДО того, как я выполнил последний шаг по удалению SDK 25 из списка даже после попытки правильно выбрать Project SDK и цель сборки.

Я пробовал несколько вещей, и это был последний шаг, который заставил меня работать. Я не знаю, относится ли это к чему-то в моей конфигурации, но это помогло мне преодолеть это.

0 голосов
/ 14 января 2019

какая версия AS обрабатывает это правильно; 3.2.1 или 3.3?

Предположительно 3.3, поскольку в Android 8.0 (API Уровень 26) были добавлены адаптивные иконки.

Должен ли я удалить значок v25?

Измените каталог на mipmap-anydpi-v26/, и вы все еще можете использовать этот значок для Android 8.0+. Если ваш minSdkVersion ниже этого значения (и я предполагаю, что это так), вам потребуется альтернативная реализация иконки для более старых устройств.

Я думал, что у Lollipop есть поддержка иконок этого типа ...

Lollipop - это Android 5.x, уровень API 21-22. Ваш каталог -v25 не будет использоваться для этих уровней API.

...