[Flutter]

[Flutter] 인터넷 연결 확인

Hevton 2022. 7. 12. 13:28
반응형

 

아주 빠르고 깔끔하게 해결할 수 있는

Connectivity 플러그인을 사용할 것이다.

 

https://pub.dev/packages/connectivity_plus

 

connectivity_plus | Flutter Package

Flutter plugin for discovering the state of the network (WiFi & mobile/cellular) connectivity on Android and iOS.

pub.dev

 

 

사용법이 매우 간단하다. 목적에 따라 크게 두 가지가 있다.

 

 

1. 한번 체크하기

2. 리스너를 달아놓고, 상태가 변경될 때 마다 받아보기

 

 


 

우선 1이던 2이던, pubspec.yaml 파일에

connectivity_plus: ^2.3.5

추가해준 뒤 pub get으로 적용을 해준다.

 

 

 

위 사이트에도 잘 나와있지만,

1로 구현하기 위해서는

import 'package:connectivity_plus/connectivity_plus.dart';

var connectivityResult = await (Connectivity().checkConnectivity());
if (connectivityResult == ConnectivityResult.mobile) {
  // I am connected to a mobile network.
} else if (connectivityResult == ConnectivityResult.wifi) {
  // I am connected to a wifi network.
}

단순히 이러한 작업을 해주면 되고

 

 

2로 구현하기 위해서는

import 'package:connectivity_plus/connectivity_plus.dart';

@override
initState() {
  super.initState();

  subscription = Connectivity().onConnectivityChanged.listen((ConnectivityResult result) {
    // Got a new connectivity status!
  })
}

// Be sure to cancel subscription after you are done
@override
dispose() {
  super.dispose();

  subscription.cancel();
}

이러한 작업을 해주면 끝난다..

반응형