구글맵 API를 사용한 어플 만들어보기 (위치 검색, 현위치)

구글맵 API를 사용한 어플 만들어보기 (위치 검색, 현위치)

메인 엑티비티는 검색어 입력 텍스트, 검색 버튼, 리사이클러 뷰 등으로 이루어져 있습니다. EditText 의 경우에는 인풋 타입을 텍스트, 최대 라인을 1로 잡아주었고 리사이클러뷰 레이아웃 매니저를 xml 상에서 지정해주었습니다. activitymap.xml 리사이클러뷰 에서는 검색한 위치 내역이 리스트로 표시되게 할겁니다. 데이터 변경 시 notifyDataSetChanged 으로 데이터 변경을 알려 뷰를 업데이트 할 수 있도록 해줍시다.


구글 맵 사용하기
구글 맵 사용하기

구글 맵 사용하기

메인 엑티비티에서 검색 결과 아이템을 터치하시면 해당 데이터를 바탕으로 맵 엑티비티에서 구글맵을 표시합니다. 검색 위치를 표시하는 과정은 아래와 같이 이루어집니다. 맵 엑티비티 실행 getParcelableExtra 로 SearchResultEntity 를 받아옴 OnMapReadyCallback 을 구현한 맵 엑티비티에서 onMapReady 를 처리 이럴때 마커를 만들고 지도에서 이를 표시 검색 결과 entitiy 불러오기 구글맵 마커 만들기 그리고 현재 위치를 요청하도록 합니다.

코루틴을 사용한 비동기 요청 처리
코루틴을 사용한 비동기 요청 처리

코루틴을 사용한 비동기 요청 처리

미리 정의 해준 coroutineContext 로 launch 해서 코루틴을 시작합니다. 네트워크 업무를 할때는 withContextDispatchers.IO 를 통해 IO 스레드를 이용해서 처리해줍니다.

레트로핏을 이용해서 티맵 api 를 통해 지도 검색을 합니다. 요청 body가 응답 성공이라면 이를 통해 데이터를 파싱하여 리사이클러 뷰의 어뎁터에 데이터를 등록하게됩니다.

이때는 UI 스레드 즉, 메인 스레드를 사용합니다.

달라진 점, 꾸쭌히 변화해야 하는 이유

여러분을 가장 처음 맞이하는 첫화면, 홈탭을 준비하면서 생각을 거듭했습니다. 카카오맵을 오래 사용한 만큼 익숙함은 쌓였고, 그럴수록 새로운 변화는 더 크게 체감되실 수밖에 없겠죠. 지도의 찐 재미와 지속 가능성, 그리고 즐거운 마음으로 준비하고 있는 신기능을 보기 좋게 담기 위해 개편을 진행하였습니다. 더 좋은 서비스로 보답할 수 있도록 늘 최선을 다하겠습니다. 변화된 점 사이드메뉴에서 제공했던 기능은 홈탭과 마이탭에서 제공합니다.

길찾기 버튼이 검색창 옆으로 이동합니다. 공지 및 설정은 홈탭 최 지금부터 이용하실 수 있습니다.

자주 묻는 질문

구글 맵 사용하기

메인 엑티비티에서 검색 결과 아이템을 터치하시면 해당 데이터를 바탕으로 맵 엑티비티에서 구글맵을 표시합니다. 구체적인 내용은 본문을 참고 해주시기 바랍니다.

코루틴을 사용한 비동기 요청

미리 정의 해준 coroutineContext 로 launch 해서 코루틴을 시작합니다. 구체적인 내용은 본문을 참고 해주시기 바랍니다.

달라진 점, 꾸쭌히 변화해야 하는

여러분을 가장 처음 맞이하는 첫화면, 홈탭을 준비하면서 생각을 거듭했습니다. 구체적인 내용은 본문을 참고하시기 바랍니다.