뚝딱뚝딱 모바일

[Flutter] 플랫폼 구분을 해보자 본문

Flutter 지식

[Flutter] 플랫폼 구분을 해보자

규석 2023. 11. 24. 14:52

안녕하세요!

이번엔 Flutter에서 플랫폼 구분을 해보려고 합니다.

매우 간단한 내용이니 가볍게 읽으실 수 있을 겁니다!


Web

if (kIsWeb) {
  // 웹일 때 행할 무언가
} else {
  // 웹을 제외한 무언가
}

flutter/foundation.dart 패키지에 있는 kIsWeb이라는 bool 값으로 구분이 가능합니다.

Android, iOS, MacOS, Windows, Linux, Fuchsia

dart:io 패키지에 존재하는 Platform 클래스의 static 변수로 있습니다. 각 OS마다 구분하시고 알맞은 코드를 추가하시면 됩니다.

유의사항

Flutter를 Web으로 실행할 때, Platform 클래스가 코드에 있으면 에러를 방출합니다. 만약 웹과 앱 모두 분기처리를 해야 된다면, kIsWeb 변수로 Web인지 확인한 후에 구분해 주시는 것이 좋습니다.