[flutter] 플러터에서 위치 서비스 사용하기

플러터 어플리케이션에서 사용자의 위치를 얻고 위치 기반 기능을 구현하기 위해서는 위치 서비스를 사용해야 합니다. 이 포스트에서는 플러터에서 위치 서비스를 사용하는 방법을 알아보겠습니다.

위치 권한 확인

우선 사용자의 위치 정보를 얻기 전에, manifest 파일에서 위치 권한을 추가해야 합니다. 아래는 AndroidManifest.xml 파일에서 위치 권한을 추가하는 예시입니다.

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

또한 iOS의 경우에는 Info.plist 파일에 위치 권한을 추가해야 합니다.

<key>NSLocationWhenInUseUsageDescription</key>
<string>We need your location for better user experience</string>

위치 서비스 패키지 추가

플러터에서는 geolocatorlocation 와 같은 위치 서비스를 제공하는 패키지를 사용하여 위치 정보를 가져올 수 있습니다. 원하는 패키지를 pubspec.yaml 파일에 추가하고 패키지를 가져오세요.

dependencies:
  geolocator: ^7.6.2

이제 패키지를 가져왔으니 패키지에 있는 기능을 사용하여 위치 서비스를 활용할 수 있습니다.

import 'package:geolocator/geolocator.dart';

Position userLocation = await Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.high);
print('현재 사용자의 위치는: ${userLocation.latitude}, ${userLocation.longitude}');

위 코드는 geolocator 패키지를 사용하여 사용자의 현재 위치를 가져오는 예시입니다.

위치 서비스를 사용하는 방법에 대해서 간단히 알아보았습니다. 위치 서비스를 사용하면 사용자의 위치 정보를 얻어와서 지도를 표시하거나 위치 기반 서비스를 구현하는 등의 다양한 기능을 구현할 수 있습니다.

더 많은 정보는 Geolocator 패키지 문서를 참고하세요.