開始使用 Azure 地圖服務 Android SDK

Azure 地圖服務 Android SDK 是適用於 Android 的向量對應庫。 本文會引導您完成安裝 Azure 地圖服務 Android SDK 和載入地圖的程式。

注意

Azure 地圖服務 Android SDK 淘汰

適用於 Android 的 Azure 地圖服務 原生 SDK 現在已被取代,將於 3/31/25 淘汰。 若要避免服務中斷,請透過 3/31/25 移轉至 Azure 地圖服務 Web SDK。 如需詳細資訊,請參閱 Azure 地圖服務 Android SDK 移轉指南

必要條件

請務必完成快速入門:建立Android應用程式一文中的步驟。

將地圖當地語系化

Azure 地圖服務 Android SDK 提供三種方式來設定地圖的語言和區域檢視。 下列程式代碼示範如何將語言設定為法文(“fr-FR”),並將區域檢視設定為 “Auto”。

  1. 使用靜態setLanguagesetView屬性,將語言和地區檢視資訊傳遞至 AzureMaps 類別。 這會在您的應用程式中設定預設語言和地區檢視屬性。

    static {
        //Alternatively use Azure Active Directory authenticate.
        AzureMaps.setAadProperties("<Your aad clientId>", "<Your aad AppId>", "<Your aad Tenant>");
    
        //Set your Azure Maps Key.
        //AzureMaps.setSubscriptionKey("<Your Azure Maps Key>");   
    
        //Set the language to be used by Azure Maps.
        AzureMaps.setLanguage("fr-FR");
    
        //Set the regional view to be used by Azure Maps.
        AzureMaps.setView("Auto");
    }
    
    companion object {
        init {
            //Alternatively use Azure Active Directory authenticate.
            AzureMaps.setAadProperties("<Your aad clientId>", "<Your aad AppId>", "<Your aad Tenant>");
    
            //Set your Azure Maps Key.
            //AzureMaps.setSubscriptionKey("<Your Azure Maps Key>");
    
            //Set the language to be used by Azure Maps.
            AzureMaps.setLanguage("fr-FR");
    
            //Set the regional view to be used by Azure Maps.
            AzureMaps.setView("Auto");
        }
    }
    
  2. 您也可以將語言和區域檢視資訊傳遞至地圖控件 XML。

    <com.azure.android.maps.control.MapControl
        android:id="@+id/myMap"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:azure_maps_language="fr-FR"
        app:azure_maps_view="Auto"
        />
    
  3. 以程式設計方式設定語言和地區檢視屬性的最後方式會使用地圖 setStyle 方法。 您可以隨時完成此動作,以變更地圖的語言和區域檢視。

    mapControl.onReady(map -> {
        map.setStyle(
            language("fr-FR"),
            view("Auto")
        );
    });
    
    mapControl.onReady(OnReady { map: AzureMap ->
        map.setStyle(
            language("fr-FR"),
            view("Auto")
        )
    })
    

以下是語言設定為 「fr-FR」 且地區檢視設定為 「Auto」 的範例 Azure 地圖服務。

Azure 地圖服務,以法文顯示標籤地圖影像

如需支援語言和地區檢視的完整清單,請參閱 Azure 地圖服務 中的當地語系化支援。

有幾種不同的方式可以縮放、移動流覽、旋轉和傾斜地圖。 下列詳細說明巡覽地圖的所有不同方式。

縮放地圖

  • 用兩根手指觸摸地圖,並捏合在一起,放大或分散手指以放大。
  • 按兩下地圖以放大一個層級。
  • 按兩指放大地圖一個層級。
  • 點兩次;在第二次點選時,按住地圖上的手指,向上拖曳以放大,或向下拖曳以縮小。

將地圖平移

  • 觸控地圖並拖曳到任何方向。

旋轉地圖

  • 使用兩根手指觸控地圖並旋轉。

向地圖傾斜

  • 使用兩根手指觸控地圖,並將它們向上或向下拖曳。

Azure Government 雲端支援

Azure 地圖服務 Android SDK 支援 Azure Government 雲端。 您可以從相同的 Maven 存放庫存取 Azure 地圖服務 Android SDK。 必須執行下列工作,才能連線到 Azure 地圖服務 平臺的 Azure Government 雲端版本。

在指定 Azure 地圖服務 驗證詳細資料的位置,請新增下列程式代碼行,以告知對應使用 Azure 地圖服務 政府雲端網域。

AzureMaps.setDomain("atlas.azure.us");
AzureMaps.setDomain("atlas.azure.us")

驗證地圖和服務時,請務必使用 Azure Government 雲端平臺 Azure 地圖服務 驗證詳細數據。

從預覽版本移轉

隨著從預覽版移至正式運作,Android SDK Azure 地圖服務 中引進了一些重大變更。 以下是主要詳細數據:

  • Maven 識別子從 "com.microsoft.azure.maps:mapcontrol:0.7" 變更為 "com.azure.android:azure-maps-control:1.0.0"。 命名空間和主要版本號碼已變更。

  • 匯入命名空間已從 com.microsoft.azure.maps.mapcontrol 變更為 com.azure.android.maps.control

  • XML 選項、色彩資源與影像資源的資源名稱已將 文字 mapcontrol_ 取代為 azure_maps_

    之前:

    <com.microsoft.azure.maps.mapcontrol.MapControl
        android:id="@+id/myMap"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:mapcontrol_language="fr-FR"
        app:mapcontrol_view="Auto"
        app:mapcontrol_centerLat="47.602806"
        app:mapcontrol_centerLng="-122.329330"
        app:mapcontrol_zoom="12"
    />
    

    <com.azure.android.maps.control.MapControl
        android:id="@+id/myMap"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:azure_maps_language="fr-FR"
        app:azure_maps_view="Auto"
        app:azure_maps_centerLat="47.602806"
        app:azure_maps_centerLng="-122.329330"
        app:azure_maps_zoom="12"
    />
    

下一步

瞭解如何在地圖上新增重疊數據: