Maps Android KTX

Maps Android Kotlin 擴充功能 (KTX) 是 Maps SDK for Android 和 Maps SDK for Android 公用程式庫的 Kotlin 擴充功能組合。這些擴充功能提供 Kotlin 語言功能,可讓您在開發 Maps SDK for Android 時,撰寫出簡潔和慣用的 Kotlin 程式語言。Maps KTX 為開放原始碼,您可以在 GitHub 中找到完整程式碼和相關範例。

安裝

若想安裝 Maps SDK for Android 適用的 KTX,以及 Maps SDK for Android 公用程式庫適用的 KTX (選用),請在 build.gradle 檔案中加入以下依附元件。

dependencies {

    // KTX for the Maps SDK for Android library
    implementation 'com.google.maps.android:maps-ktx:5.0.0'
}

使用範例

KTX 程式庫提供多項 Kotlin 語言功能,例如擴充功能函式、具名參數和預設引數、解構宣告,以及協同程式。

使用協同程式擷取 GoogleMap

您可使用協同程式擷取 GoogleMap

lifecycleScope.launch {
  lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) {
    val mapFragment: SupportMapFragment? =
      supportFragmentManager.findFragmentById(R.id.map) as? SupportMapFragment
    val googleMap: GoogleMap? = mapFragment?.awaitMap()
  }
}

新增標記

您可以使用 DSL 式方法 addMarker() 來新增標記。

val sydney = LatLng(-33.852, 151.211)
val marker = googleMap.addMarker {
  position(sydney)
  title("Marker in Sydney")
}

收集攝影機事件

您可以透過 Kotlin 流程收集攝影機移動等事件。

lifecycleScope.launch {
  lifecycle.repeatOnLifecycle(Lifecycle.State.CREATED) {
    googleMap.cameraMoveEvents().collect {
      print("Received camera move event")
    }
  }
}

如要查看支援功能的完整清單,請參閱參考說明文件

使用範例應用程式

這個程式庫的 GitHub 存放區也包含試用版應用程式,可協助您瞭解如何在自有應用程式中使用 Maps KTX 程式庫。

如要使用試用版應用程式,請按照下列步驟操作:

  1. GitHub 中,複製或下載 ZIP 檔案。
  2. 在 Android Studio 中,依序選擇「File」(檔案) 和「Open」(開啟),然後前往該目錄,開啟剛才複製或下載的資料夾。
  3. 在試用版應用程式中加入 API 金鑰。
    1. 取得 Maps SDK for Android 金鑰
    2. 在根目錄中,建立名為 secrets.properties 的檔案。為保護您的 API 金鑰,這個檔案不得受到版本管控。
    3. secrets.properties 中加入這一行
      MAPS_API_KEY="YOUR_API_KEY"
      其中 YOUR_API_KEY 是您在第一個步驟取得的 API 金鑰。您可以將 secrets.defaults.properties 視為例子。
  4. 在執行設定下,選取 app-ktx 模組。
  5. 選取「Run 'app-ktx'」(執行「app-ktx」)

後續主題

我們也建議您查看 Google 地圖平台的其他 Kotlin 擴充功能程式庫:

  • Map SDK for Android 公用程式庫專用的 KTX
  • Places SDK for Android 專用的 KTX