반응형
rn 에서 위도, 경도 값으로
googlemap api 통해 주소 얻어오는 코드 공유 합니다.
우선, react-native reverse geocoding 관련 library 를 활용해봤는데 제대로 동작이 되진 않았습니다.
github.com/devfd/react-native-geocoder
github.com/marlove/react-native-geocoding
더 찾아보니, library 는 불필요했고
바로 googlemap url 을 fetch() 해오면 정상적으로 주소를 얻어올 수 있습니다.
코드는 다음과 같이 적용합니다.
fetch('https://maps.googleapis.com/maps/api/geocode/json?address=' + latitude + ',' + longitude
+ '&key=' + mApiKey + '&language=ko')
.then((response) => response.json())
.then((responseJson) => {
console.log('udonPeople ' + responseJson.results[0].formatted_address);
}).catch((err) => console.log("udonPeople error : " + err));
google api key 가 없다면, GCP 에서 geocoding api 키 발급 후 값을 복사해와서 위 apiKey 값에 넣으면 됩니다.
구글 지오코딩 API 키 발급 받는 방법 (...
- 1. 구글 클라우드 콘솔 사이트에 방문 아래 링크를 클릭해 구글 지도 플랫폼 사이트로 접속해주세요. ...
- 새 프로젝트를 만들기 프로젝트 선택 -> 새 프로젝트 버튼을 클릭해주세요.
- API 사용 설정하기 ...
- 사용자 인증 정보 만들기 ...
- API 키 발급 완료
그럼, 정상적으로 response 까지 되지만 아직 permission 문제가 남아있습니다
위 같은 문구가 나오면, 결제 계좌를 추가로 활성화 시켜야 합니다.
아래 화면에서 우측 상단에 '활성화' 버튼이 생기는데,
누르면 이제 모두 완료 됩니다.
이제 정상적으로 값을 얻어올 수 있습니다.
responseJson 값을 출력하면 다음과 같이 나오고,
최종 적으로 responseJson.results[0].formatted_address 값을 얻어오면 됩니다.
배열 [0] 과 [1] 을 찍어보면, 하나는 도로명, 하나는 지번 주소일 때도있고 반대일 경우도 있고
구글맵 한국어 주소가 중구난방 이네요
반응형
'Mobile 개발 > RN Project - Map Chat' 카테고리의 다른 글
RN - 채팅, GiftedChat with realtime database (2) | 2021.01.01 |
---|---|
RN - Project 에서 활용한 라이브러리 (2) | 2020.12.05 |
React Native map-based chat app with firebase (0) | 2020.09.16 |
RN (React Native) - 네이버지도, 클릭 위치 marker 표시 (4) | 2020.09.12 |
RN (React Native) - 네이버지도 연동 (4) | 2020.09.04 |