Trouver le système d’exploitation d’un appareil avec Flutter


Avatar de Pierre Courtois

Lorsque vous développez une application Flutter, il est souvent nécessaire d’adapter certaines fonctionnalités en fonction du système d’exploitation sur lequel l’application est exécutée. Dans ce guide, je vous explique comment obtenir cette information.


Trouver système exploitation Flutter

Trouver le Système d’Exploitation avec Platform.operatingSystem

Flutter fournit la classe Platform pour interagir avec le système d’exploitation sous-jacent. Une des méthodes les plus simples pour obtenir le nom du système d’exploitation est d’utiliser Platform.operatingSystem.

import 'dart:io';

void main() {
  String systeme = Platform.operatingSystem;
  print("L'application est lancée sur : $systeme");
}

Le code ci-dessus va retourner une chaîne de caractères qui représente le système d’exploitation sur lequel l’application est en cours d’exécution. Les valeurs possibles incluent :

  • android ;
  • ios ;
  • linux ;
  • macos ;
  • windows ;
  • fuchsia.

La fonction Platform.operatingSystem est donc approprié lorsque vous avez besoin de récupérer le système d’exploitation, mais ne savez pas à l’avance lequel sera celui-ci.

Vérifier un Système d’Exploitation Spécifique avec Platform.isXXX

Une deuxième manière de vérifier quel est le système d’exploitation sur lequel est lancée votre application Flutter est d’utiliser la fonction Platform.isXXX. Cela peut être utile, lorsque vous souhaitez exécuter une méthode sur une seule plateforme, comme c’est le cas de l’authentification par Apple Sign In, qui ne fonctionne que sur IOS ou MacOs.

Pour ce faire, Flutter propose une série de méthodes booléennes telles que Platform.isAndroid, Platform.isIOS, Platform.isMacOS, etc. Ces méthodes vous permettent de savoir précisément si l’application est en cours d’exécution sur un système particulier.

import 'dart:io';

String getResourcePath() {
  if (Platform.isAndroid) {
    return 'assets/android/';
  } else if (Platform.isIOS) {
    return 'assets/ios/';
  } else {
    return 'assets/others/';
  }
}

Dans cet exemple, le code retourne un chemin de ressources spécifique en fonction du système d’exploitation, ce qui permet à votre application de charger des fichiers ou des configurations adaptés à chaque environnement.

Plus de guides Flutter

À la recherche de plus de guides pour coder rapidement une application Flutter dynamique ? Pourquoi ne pas consulter la liste complète ?

Avatar de Pierre Courtois