web-dev-qa-db-fra.com

Puis-je utiliser Android 8.0 Icônes adaptatives pour une application Flutter?

Comment puis-je utiliser une icône adaptative pour mon application Flutter sur Android 8.0 et plus? La boîte de dialogue Créer une ressource d'image dans Android Studio dit "Le projet doit être construit avec SDK 26 ou version ultérieure pour utiliser des icônes adaptatives ", même si my Android build.gradle a CompileSDKVersion défini sur 27. Si je définis l'icône en XML, cela ne fonctionne pas" t fonctionne, il semble simplement utiliser l'icône de l'application héritée régulière.

14
Piggeh Person

Ils fonctionnent parfaitement bien.

Solution

Pour travailler avec la boîte de dialogue, vous devrez ouvrir votre module Android dans Android Studio.
article Flutter.dev

La navigation est la suivante dans la barre de menus: Tools ~> Flutter ~> Open Android module in Android Studio ou faites un clic droit n'importe où dans votre dossier Android dans la vue du projet et sélectionnez Flutter ~> Open Android module in Android Studio.

Maintenant, vous pourrez utiliser normalement la boîte de dialogue des ressources.

Si cela ne fonctionne toujours pas (cela ne se produit pas)

Si votre boîte de dialogue ne fonctionne pas dans votre projet Flutter , vous pouvez facilement créer une icône adaptative dans un projet Android puis copiez le fichier nécessaire, qui sont:

  • ic_launcher_background.xml (dessinable), je pense que cela se trouve dans valeurs si vous avez choisi une couleur

  • ic_launcher_foreground.xml (drawable-v24)

  • ic_launcher.xml et si vous l'avez créé ic_launcher_round.xml (mipmap-anydpi-v26)

  • tout ic_launcher.png et ic_launcher_round.png (mipmap-hdpi à mipmap-xxxhdpi) pour la prise en charge héritée. Je suppose que ceux-ci ne sont pas nécessaires si votre exigence minimale de SDK est supérieure à 25

Cela couvrirait tout pour moi. Maintenant, dans votre AndroidManifest.xml spécifier Android:icon="@mipmap/ic_launcher" pour votre candidature, c'est-à-dire dans votre <application> tag, et si nécessaire Android:roundIcon:"@mipmap/ic_launcher_round".