How can I use an Adaptive Icon for my Flutter app on Android 8.0 and up? The Create Image Asset dialog in Android Studio says "Project must be built with SDK 26 or later to use adaptive icons", even though my android build.gradle has CompileSDKVersion set to 27. If I define the icon in XML, it doesn't work, it seems to just use the regular legacy app icon.
Now that you have an image, create a directory in your Flutter app called assets if you do not have one already. After you've created your assets directory, move your icon image into it. The next thing you need to do is head over to your pubspec. yaml file, and, under dependencies, add flutter_launcher_icons .
Add your adaptive icon to your app xml , create alternative drawable resources in your app for backward-compatibility with Android 8.0 (API level 26). You can then use the <adaptive-icon> element to define the foreground, background, and monochromatic layer drawables for your icons.
They work perfectly fine.
To work with the dialog, you will need to open your Android module in Android Studio.
Flutter.dev article
Navigation is the following in the menu bar: Tools
~> Flutter
~> Open Android module in Android Studio
or right-click anywhere in your android
folder in the project view and select Flutter
~> Open Android module in Android Studio
.
Now you will be able to use the asset dialog normally.
If your dialog does not work in your Flutter project, you can easily create an adaptive icon in an Android project and then copy the necessary file, which are:
ic_launcher_background.xml
(drawable), I think that this is located in values if you chose a color
ic_launcher_foreground.xml
(drawable-v24)
ic_launcher.xml
and if you created it ic_launcher_round.xml
(mipmap-anydpi-v26)
all ic_launcher.png
and ic_launcher_round.png
(mipmap-hdpi to mipmap-xxxhdpi) for legacy support. I suppose that these are not needed if your minimum SDK requirement is higher than 25
This would cover everything for me. Now, in your AndroidManifest.xml
specify android:icon="@mipmap/ic_launcher"
for your application, i.e. in your <application>
tag, and if needed android:roundIcon:"@mipmap/ic_launcher_round"
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With