Les réponses sont déjà fournies, mais ne vous contentez pas de les copier-coller dans votre base de code sans savoir ce que vous faites :
Si vous utilisez SystemChannels.platform.invokeMethod('SystemNavigator.pop');
notez que doc est clairement mentionnée :
Indique au navigateur du système de supprimer cette activité de la pile et de revenir à l'activité précédente.
Sous iOS, les appels à cette méthode sont ignorés car les directives d'interface humaine d'Apple d'Apple stipulent que les applications ne doivent pas se elles-mêmes.
Vous pouvez utiliser exit(0)
. Et cela terminera le processus Dart VM immédiatement avec le code de sortie donné. Mais n'oubliez pas que doc dit :
Cette opération n'attend pas la fin d'une opération asynchrone. L'utilisation de exit est donc très susceptible de perdre des données.
De toute façon, le doc a également noté SystemChannels.platform.invokeMethod('SystemNavigator.pop');
:
Cette méthode doit être préférée à l'appel de la méthode exit de dart:io, puisque cette dernière peut faire en sorte que la plate-forme sous-jacente agisse comme si l'application s'était écrasée.
Donc, continuez à vous souvenir de ce que vous faites.