[flutter] 플러터에서 위치 정보를 이용한 가까운 편의점 찾기 앱 만들기

플러터를 사용하여 위치 정보를 기반으로 사용자 주변의 편의점을 찾는 간단한 앱을 만들어보겠습니다. 이 앱은 사용자의 현재 위치를 기반으로 가장 가까운 편의점을 찾아 지도에 표시하는 기능을 포함합니다.

요구 사항

이 프로젝트를 만들기 위해 다음과 같은 요구 사항이 필요합니다:

  1. Flutter SDK
  2. Google 지도 API 키

단계별 가이드

1. Flutter 프로젝트 생성

먼저, Flutter 프로젝트를 생성합니다. 터미널에서 다음 명령어를 실행하여 새로운 Flutter 프로젝트를 생성합니다.

flutter create convenience_store_finder

2. Google 지도 API 추가

Google Cloud Platform에서 새로운 프로젝트를 만들고, 지도 API 키를 생성합니다. 생성된 API 키를 앱에 추가하여 Google 지도를 사용할 수 있도록 설정합니다.

3. 위치 권한 요청

앱에서 사용자의 위치 정보에 접근하기 위해 위치 권한을 요청해야 합니다. geolocator 패키지를 사용하여 위치 정보를 가져오고, 필요한 권한을 요청할 수 있습니다.

import 'package:geolocator/geolocator.dart';

void getLocation() async {
  var position = await Geolocator.getCurrentPosition(
    desiredAccuracy: LocationAccuracy.high,
  );
  print(position);
}

4. 편의점 위치 표시

Google 지도 API를 사용하여 편의점의 위치를 표시합니다. API를 호출하여 편의점 위치를 가져와 지도에 마커로 표시합니다.

GoogleMap(
  initialCameraPosition: CameraPosition(
    target: LatLng(37.7749, -122.4194),
    zoom: 14.0,
  ),
  markers: _markers,
  onMapCreated: (GoogleMapController controller) {
    _controller.complete(controller);
  },
)

5. 가까운 편의점 찾기

사용자의 위치와 편의점 위치를 비교하여 가장 가까운 편의점을 찾습니다. geolocator 패키지를 사용하여 거리를 계산하고, 가장 가까운 편의점을 지도에 표시합니다.

마치며

이렇게하면 사용자가 위치 정보를 기반으로 주변의 편의점을 찾아볼 수 있는 간단한 플러터 앱을 만들 수 있습니다. 더 나아가서 검색 기능이나 상세 정보 표시 등을 추가하여 더 유용한 앱으로 발전시킬 수도 있습니다.