Comment dirigeriez-vous une commande et passez des arguments personnalisés avec Flutter/Dart afin qu'elles puissent être accessibles dans l'appel main()
appel comme:
flutter run -device [my custom arg]
Alors, je peux y accéder avec:
void main(List<String> args) {
print(args.toString());
}
Merci.
J'ai eu le même problème, alors j'ai écrit un colis et des instructions pouvant aider.
https://pub.dev/packages/launch_args
Je ne suis pas au courant d'un moyen de passer les arguments via la commande flutter
. Autant que je sache, vous devez d'abord construire l'application via Flutter, puis utilisez l'autre CLIS pour transmettre les outils.
Android
adb -s $DEVICE_ID Shell am start \
-n $Android_PACKAGE/$Android_ACTIVITY \
-ez [arg name] [value] \
-ez [arg name2] [value 2] \
...
iOS
$FLUTTER_HOME/bin/cache/artifacts/ios-deploy/ios-deploy --id $DEVICE_ID \
--bundle build/ios/iphoneos/Runner.app \
--debug \
--args [arg name] [arg value] [arg name2] [arg value2] ...
Assurez-vous d'utiliser la version de ios-deploy
Cela a hébergé dans les artefacts mis en cache de Flutter. Ils ont dû faire des modifications à cet outil vs la standard que vous pouvez installer via Homebrew car je ne pouvais que travailler les choses lorsque j'ai utilisé la version interne de Flutter.