App의 기능 중 인터넷 연결을 통해 외부에서 데이터를 받아오는 경우가 있다.
해당 기능을 실행할 때 해당 기기가 인터넷과 연결이 되어 있는지를 확인해야 한다.
try {
final result = await InternetAddress.lookup('google.com');
//(1)번
if (result.isNotEmpty && result[0].rawAddress.isNotEmpty) {
//(2)번 부분
// 기능 관련 코드 작성
}
}
catch (e) {
print("에러는 $e");
}
코드는 간단하다.
- 먼저 해당 기기에서 Google.com과 연결을 시도한다.
- 연결에 성공한 경우 다음과 같은 결과가 도착한다.
ex) [InternetAddress('172.217.26.46', IPv4),InternetAddress('2404:6800:4004:80a::200e', IPv6)]- 결과 값보다 기기의 인터넷과의 연결 여부를 확인하는 것이기에 result을 (1)번 부분의 if문을 통해 확인한다.
- 해당 기기의 데이터가 연결되어 있다면 if의 조건문이 true가 되어 다음 코드를 실행할 것이다.
- 만약 데이터가 연결되어 있지 않다면 catch문의 코드를 실행하게 될 것이다.