[flutter] 플러터에서 사용자의 현재 위치 확인하기

플러터 앱을 개발하다 보면 사용자의 현재 위치를 알아야 하는 경우가 있습니다. 이 포스트에서는 플러터에서 사용자의 현재 위치를 확인하는 방법에 대해 알아보겠습니다.

Geolocator 패키지 설치

먼저, 사용자의 현재 위치를 확인하려면 geolocator 패키지를 사용해야 합니다. pubspec.yaml 파일에 다음과 같이 패키지를 추가합니다.

dependencies:
  geolocator: ^7.7.0

그리고 나서 패키지를 가져와야 합니다.

import 'package:geolocator/geolocator.dart';

사용자의 현재 위치 가져오기

geolocator 패키지를 이용하면 간단하게 사용자의 현재 위치를 가져올 수 있습니다. 아래는 현재 위치를 가져오는 예제 코드입니다.

Position position = await Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.high);
print('현재 위치: ${position.latitude}, ${position.longitude}');

위 코드에서 desiredAccuracy 매개변수는 위치의 정확도를 나타냅니다. LocationAccuracy.high로 설정하면 더 정확한 위치를 가져올 수 있지만, 더 많은 배터리를 소모하게 됩니다.

권한 요청

사용자의 위치 정보를 가져오기 위해서는 권한을 요청해야 합니다. 플러터에서는 geolocator 패키지를 사용하여 위치 권한을 요청할 수 있습니다. 아래는 위치 권한을 요청하는 예제 코드입니다.

bool serviceEnabled = await Geolocator.isLocationServiceEnabled();
if (!serviceEnabled) {
  return;
}

LocationPermission permission = await Geolocator.checkPermission();
if (permission == LocationPermission.denied) {
  permission = await Geolocator.requestPermission();
  if (permission == LocationPermission.denied) {
    // 위치 권한이 거부됨
    return;
  }
}

if (permission == LocationPermission.deniedForever) {
  // 위치 권한이 영구적으로 거부됨
  return;
}

요약

플러터에서 사용자의 현재 위치를 확인하는 방법에 대해 알아보았습니다. geolocator 패키지를 이용하여 간단하게 현재 위치를 확인할 수 있으며, 위치 권한을 요청하는 과정도 간단하게 처리할 수 있습니다.

더 많은 정보를 원하시면 geolocator 패키지 문서를 참고하시기 바랍니다.