Comment exécuter sound null safety dans Flutter en l'absence de dépendance supportant null safety ?
Le framework Flutter permet de créer une application pouvant fonctionner sur l'ensemble des plateformes existantes (smartphone, PC, site internet). Il a été développé par les équipes de Google, et profite régulièrement de certaines mises à jour. La version 2 du framework ajoute notamment la gestion sûre des valeurs nulles. Cette fonctionnalité prévient les crashs du framework en cas d'utilisation d'une valeur nulle.
Si le framework a cette fonctionnalité, toutes les dépendances que vous pouvez utiliser ne l'ont pas systématiquement. C'est aux développeurs de ces librairies de les mettre en place. Il existe un mécanisme permettant de gérer cette différence. Ce système s'appelle "unsound null safety". Cette fonctionnalité permet l'utilisation de valeur mais uniquement en provenance des dépendances qui le gèrent, et dans ce cas on peut détecter l'origine de l'erreur.
Si vous souhaitez activer cette fonctionnalité, il suffit d'ajouter l'option "--no-sound-null-safety" à la commande "flutter run", qui lance la plateforme de test du framework.
flutter run --no-sound-null-safety
Généralement, le framework est à utiliser depuis un environnement de développement. Si vous utilisez Android Studio ou son environnement de développement parent IntelliJ IDEA, dans la section des configurations, modifiez la configuration "run", ajoutez dans le champ "Additional run args" la valeur "--no-sound-null-safety".
Si vous utilisez Visual Studio Code, rendez-vous dans les paramètres utilisateurs. Recherchez le paramètre "Flutter run additional args" et ajoutez "--no-sound-null-safety". Une autre option consiste à ajouter la ligne suivante dans le fichier "launch.json" situé dans le dossier ".vscode" de votre projet.
"args": [ "--no-sound-null-safety" ]