구글맵은 Google Maps Platform으로 활용합니다.
1. 주요 API 구성
| Maps JavaScript API | 웹 지도 표시 |
| Maps SDK for Android | Android 앱 지도 |
| Maps SDK for iOS | iPhone 앱 지도 |
| Maps Static API | 정적 지도 이미지 |
| Geocoding API | 주소 → 위도/경도 |
| Reverse Geocoding | 위도/경도 → 주소 |
| Places API | 장소 검색, 자동완성 |
| Routes / Directions | 경로, 거리, 이동시간 |
| Street View | 거리뷰 |
Google Maps Platform은 웹, Android, iOS별 API와 SDK를 제공하며, Maps JavaScript API는 웹에서 2D/3D 지도, 마커, 스타일, 장소 정보 등을 표시할 수 있습니다.
2. 웹에서 기본 사용
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">
</script>
<div id="map" style="width:100%;height:500px;"></div>
<script>
function initMap() {
const pos = { lat: 35.227, lng: 128.681 };
const map = new google.maps.Map(document.getElementById("map"), {
center: pos,
zoom: 14
});
new google.maps.Marker({
position: pos,
map: map,
title: "창원"
});
}
</script>
3. MAUI 앱에서 활용 방식
방식 A. WebView 방식
가장 현실적입니다.
MAUI 앱
→ WebView
→ Google Maps JavaScript API
→ 마커 / 경로 / 장소 표시
장점:
- C# MAUI에서 구현 쉬움
- Android/iOS 공통 처리 가능
- 기존 eMap, eITS, eAir 구조와 잘 맞음
단점:
- API Key 보안 관리 필요
- WebView와 C# 간 데이터 연동 필요
- 호출량 증가 시 과금 가능
4. Android 네이티브 방식
Android 전용으로 개발한다면 Maps SDK for Android를 사용합니다.
이 SDK는 Android 앱에 Google Maps 데이터를 표시하고, 마커·폴리곤·오버레이·제스처 처리를 지원합니다.
Android 앱
→ Maps SDK for Android
→ GoogleMap 객체
→ Marker / Polyline / Camera 이동
MAUI에서는 네이티브 SDK 직접 연동보다 WebView 방식이 빠릅니다.
5. 주소 검색 구조
주소나 장소명을 입력받아 지도에 표시하려면 다음 구조가 좋습니다.
사용자 입력
→ Geocoding API 또는 Places API
→ 위도/경도 획득
→ 지도 이동
→ 마커 표시
Geocoding API는 주소나 장소 ID를 위도/경도로 변환하고, 반대로 좌표를 주소로 변환하는 데 사용됩니다.
장소명 검색, 자동완성, 주변 장소 검색이 필요하면 Places API가 적합합니다. Places API는 장소, 시설, 지리적 위치 정보를 HTTP 요청으로 조회할 수 있습니다.
6. 위치 기반 앱 적용 예
현재 개발 중인 앱 기준으로는 이렇게 활용할 수 있습니다.
| 지도어때 | 현재 위치, 장소 검색 |
| 고속도로어때 | CCTV 위치 마커 |
| 국도어때 | 국도 CCTV 위치 표시 |
| 버스정류소어때 | 정류소, 버스 위치 표시 |
| 미세먼지어때 | 측정소 위치 표시 |
| 전원주택 앱 | 매물 위치 표시 |
| 정원 찾기 앱 | 정원 위치, 길찾기 |
7. 기본 개발 흐름
1. Google Cloud Console 가입
2. 프로젝트 생성
3. 결제 계정 연결
4. Maps JavaScript API 활성화
5. Geocoding API 활성화
6. Places API 활성화
7. API Key 발급
8. API Key 제한 설정
9. 앱/웹에 적용
10. 사용량 모니터링
8. API Key 보안 설정
반드시 제한을 걸어야 합니다.
| 웹 | HTTP referrer 제한 |
| Android | 패키지명 + SHA-1 제한 |
| iOS | Bundle ID 제한 |
| 서버 API | IP 제한 |
API Key를 제한하지 않으면 외부에서 키를 가져가 과금이 발생할 수 있습니다.
9. 과금 주의
Google Maps Platform은 사용량 기반 과금 구조입니다. 공식 가격 페이지 기준으로 Maps, Routes, Places 계열 API를 조합해서 사용할 수 있고, 신규 고객에게는 체험 크레딧이 제공됩니다.
또한 Maps JavaScript API는 Dynamic Maps, Places Library 등 사용 SKU에 따라 과금 방식이 달라집니다.
10. 추천 방식
개발 중인 MAUI 앱 기준이면 다음 구성이 가장 좋습니다.
MAUI WebView
+ Google Maps JavaScript API
+ Geocoding API
+ Places API
CCTV, 버스정류소, 미세먼지 측정소처럼 위치 기반 공공데이터를 지도 위에 표시하는 앱이라면 구글맵은 매우 적합합니다.
단, 국내 서비스는 네이버맵/카카오맵/VWorld가 주소·지명 검색에서 더 자연스러운 경우가 많고, 글로벌 서비스나 영문권 출시 앱은 구글맵이 더 유리합니다.
'조그만 기술로 세상을 이롭게 > 지도어때' 카테고리의 다른 글
| 지도어때 개편 안내 – 더 깔끔하고 편하게 바뀌었습니다 (0) | 2026.06.12 |
|---|---|
| 지도어때 새 버전 재출시 안내 (0) | 2026.06.02 |
| 앱, 웹 개발 시 네이버 맵 활용 방안은?! (0) | 2026.05.31 |
| 지도어때 개편 안내 (0) | 2026.05.26 |
| 위치기반 앱 개발에 유용한 VWorld란? (0) | 2026.05.25 |