Можно ли использовать Android 8.0 Adaptive Icons для приложения Flutter?

Как я могу использовать Adaptive Icon для своего приложения Flutter на Android 8.0 и выше? В диалоговом окне "Создать актив изображения" в Android Studio говорится, что "проект должен быть построен с использованием SDK 26 или более поздней версии, чтобы использовать адаптивные значки", хотя в моем android build.gradle CompileSDKVersion имеет значение 27. Если я определяю значок в XML, он не работает, кажется, просто использовать обычный значок старого приложения.

Ответ 1

Они отлично работают.

Решение

Для работы с диалоговым окном вам необходимо открыть модуль Android в Android Studio.
Статья Flutter.dev

Навигация выполняется в строке меню следующим образом: Tools ~> Flutter ~> Open Android module in Android Studio или щелкните правой кнопкой мыши в любом месте папки android в представлении проекта и выберите Flutter ~> Open Android module in Android Studio.

Теперь вы сможете нормально использовать диалог ресурсов.

Если это все еще не работает (этого не происходит)

Если ваш диалог не работает в вашем проекте Flatter, вы можете легко создать адаптивный значок в проекте Android, а затем скопировать необходимый файл, а именно:

  • ic_launcher_background.xml (рисуется), я думаю, что это находится в значениях, если вы выбрали цвет

  • ic_launcher_foreground.xml (drawable-v24)

  • ic_launcher.xml и если вы его создали ic_launcher_round.xml (mipmap-anydpi-v26)

  • все ic_launcher.png и ic_launcher_round.png (от mipmap-hdpi до mipmap-xxxhdpi) для поддержки предыдущих версий. Я полагаю, что они не нужны, если ваше минимальное требование SDK превышает 25

Это покрыло бы все для меня. Теперь в вашем AndroidManifest.xml укажите android:icon="@mipmap/ic_launcher" для вашего приложения, т.е. в вашем теге <application> и, если необходимо, android:roundIcon:"@mipmap/ic_launcher_round".