在 GIS 系統當中,通常我們都會需要一個地圖服務(或稱為圖台),用來呈現資料在空間上的關係,甚至讓使用者能夠直接與其互動,而 Google Maps SDK 就是常見的圖台之一。
Google Maps SDK 讓開發者能在自己的 App 或 Web 服務中使用 Google Maps 的基本圖資,並疊加上不同的空間資料進行展示 (點、線、面)。另外,它也提供許多圖面的互動事件,讓開發者可以實現拖曳、縮放、點擊等不同的圖台互動事件。
目前 Google Maps SDK 支援的平台包含 Android、iOS、Web (JavaScript)。
在 Android 上開發者可以選擇 Java 或是 Kotlin 兩種語言來開發。
📢 本次鐵人賽文章中的範例程式碼都是使用 Kotlin。
簡單來說,在 SDK 裡其提供的基本功能包含:
這些功能換一種說法來說,你可以把 Google Maps SDK 所提供的圖台服務,比喻成一張成套的攝影用桌。
在這個攝影桌套裝內,有提供:
如果你覺得套裝內給的東西不合用,也可以依規格自行製作,或是找網路上合規格的套件來使用。像是圖層可以改用外部的 WMTS 或是 Mbtiles。Marker 等物件也都可以自訂樣式。
前面所說的 SDK 功能,都是免費的。
以目前官方的政策,只有額外提供的 API 服務才會需要計次收費,像是用於導航的 Directions API,或是以經緯度查詢目前所在街道的 Roads API。
另外,目前單一專案都有每個月 $200 美金的額度,超過的話才會收費。如果只是想玩玩功能,或是個人的 Side-project,這樣的額度應該是綽綽有餘。如果真的不放心,也可以在 Google Cloud 後臺設定專案預算,系統會在超過指定的金額時發信通知。各個 API 詳細的收費規則可以參考 Google 地圖平台定價方式。
以上就是 Google Maps SDK 的基本功能與費用介紹,明天開始我們將正式進入實作的階段。
明天見!