https://github.com/michalchudziak/react-native-geolocation
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
코드 추가하기
Geolocation 모듈은 위치 정보를 가져오기 위한 여러 메소드를 제공합니다. 주로 사용되는 메소드는 다음과 같습니다:
• getCurrentPosition(successCallback, errorCallback, options): 현재 위치를 한 번 가져오는 메소드입니다.
• watchPosition(successCallback, errorCallback, options): 위치 변화를 지속적으로 감지하여 콜백 함수를 호출하는 메소드입니다.
• clearWatch(watchID): watchPosition 메소드로 설정한 위치 감지를 중단하는 메소드입니다.
이 함수는 세 가지 인자를 받습니다:
1. 첫 번째 함수 (info => { … }):
• 이 함수는 위치 정보가 성공적으로 획득되었을 때 호출됩니다.
• info.coords에서 latitude와 longitude를 가져올 수 있습니다
2. 두 번째 함수 (() => { … }):
• 이 함수는 위치 정보를 얻는 데 실패했을 때 호출됩니다.
3. 세 번째 인자 (옵션 객체):
• 이 객체는 위치 요청 시의 옵션을 설정합니다.
• enableHighAccuracy: true는 높은 정확도의 위치 정보를 요청하는 옵션입니다.
이를 설정하면 GPS를 사용하여 보다 정확한 위치를 얻으려 하지만, 배터리 소모가 더 클 수 있습니다.
주요 옵션 설명
• enableHighAccuracy: (boolean) 정확한 위치 정보를 요청합니다. 정확도가 높을수록 배터리 소모가 큽니다.
• timeout: (number) 위치 정보를 가져오는 데 허용되는 최대 시간(밀리초)입니다.
• maximumAge: (number) 캐시된 위치 정보를 허용하는 최대 시간(밀리초)입니다.
주요 옵션 설명
• enableHighAccuracy: 높은 정확도의 위치 정보를 요청합니다. GPS를 사용하여 더 정확한 위치를 제공합니다.
• distanceFilter: 위치 변경을 알리는 최소 거리(미터 단위)를 설정합니다.
예를 들어, distanceFilter: 10으로 설정하면 사용자가 10미터 이상 이동했을 때만 콜백 함수가 호출됩니다.
• timeout: 위치 정보를 가져오는 데 허용되는 최대 시간(밀리초)입니다.
• maximumAge: 캐시된 위치 정보를 허용하는 최대 시간(밀리초)입니다.