본문 바로가기
개발 log (개발)/mobile

'내 위치 확인' 을 위한 googlemap 및 geocoding

by abbear25 2016. 10. 25.

GoogleMap 기초 사항


GoogleMap 클래스

구글 맵 서비스에 연결, 지도 타일을 다운로드, 화면에 타일을 표시,

이동, 확대, 축소와 같은 다양한 컨트롤 표시


MapFragment(Fragment의 자식)

지도를 배치하기 위한 fragment

API버전 12이상, MapFragment 사용

API버전 12이하, SupportMapFragment 사용

다음 코드를 통해서 GoogleMap객체를 불러옴

GoogleMap mMap = ((MapFragment)) getFragmentManager().

findviewById(R.id.map)).getMap();


MapView(View의 자식)

지도를 배치하기 위한 view

MapFragment와 동일하게 지도 컨테이너 역할 수행하며

GoogleMap객체의 핵심적인 기능에 대한 엑세스를 제공

onCreate(), onDestroy()와 같은 activity 생애주기 메소드에서 MapView의 해당되는 메소드를 반드시 호출


지도의 종류

Normal,  일반 도로 지도, 도로 등의 중요한 특징들이 표시된 지도

Hybrid, 도로 지도와 위성사진 데이터가 동시 표시된 지도

Satellite, 위성사진 데이터로 도로 및 특징이 표시된 지도

*우리나라에서는 위성지도 사용 제한

Terrain 지형도 데이터로 색상, 등고선 및 원근 음영이 표시된 지도

mMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);


Geocoding 기초 사항


Geocoding, 주소나 지명 -> 좌표(위도, 경도)로 변환

List<Address> getFromLocation(latitude, longitude, maxResults)

param1, 위도

param2, 경도

param3, 결과의 최대 개수


Reverse Geocoding, 좌표 -> 주소나 지명으로 변환

List<Address> getFromLocationName(locationName, maxResults)

param1, 주소

param2, 결과의 최대 개수


.getAddressLine(int index), index에 해당하는 주소 출력

.getCountryName(), 국가 코드 (대한민국)

.getAdminArea(), 행정구역 (서울특별시)

.getLocality(), 관할구역 (중구)

.getThoroughtfare(), 상세구역 (봉래동 2가)

.getFeatureName(), 상세 주소 (122-21)



반응형