在您的應用程式中使用Google 地圖API - Xamarin

文章推薦指數: 80 %
投票人數:10人

以程式設計方式變更地圖的觀點。

新增和自訂標記。

標注具有重迭的地圖。

不同于現在已淘汰的Google 地圖android API v1, ... 跳到主要內容 已不再支援此瀏覽器。

請升級至MicrosoftEdge,以利用最新功能、安全性更新和技術支援。

下載MicrosoftEdge 其他資訊 目錄 結束焦點模式 閱讀英文 儲存 目錄 閱讀英文 儲存 Twitter LinkedIn Facebook 電子郵件 WeChat 目錄 在您的應用程式中使用Google地圖API 發行項 04/02/2022 8位參與者 此頁面有所助益嗎? Yes No 還有其他意見反應嗎? 系統會將意見反應傳送給Microsoft:按下[提交]按鈕,您的意見反應將用來改善Microsoft產品和服務。

隱私權原則。

送出 謝謝。

本文內容 使用地圖應用程式很好,但有時候您會想要在應用程式中直接包含對應。

除了內建的maps應用程式之外,Google也提供適用于Android的原生對應API。

地圖API適用于您想要更充分掌控對應體驗的案例。

地圖API可能的事項包括: 以程式設計方式變更地圖的觀點。

新增和自訂標記。

標注具有重迭的地圖。

不同于現在已淘汰的Google地圖androidAPIv1,Google地圖androidAPIv2是GooglePlayServices的一部分。

Xamarin.Android應用程式必須符合某些必要的必要條件,才能使用Google地圖AndroidAPI。

Google地圖API必要條件 您必須採取幾個步驟,才能使用地圖API,包括: 取得地圖API金鑰 安裝GooglePlayServicesSDK 安裝>xamarin.googleplayservices.base。

從NuGet地圖套件 指定必要的許可權 (選擇性)使用GoogleApi建立模擬器 取得Google地圖API金鑰 第一個步驟是取得Google地圖api金鑰(請注意,您無法重複使用舊版Google地圖v1API)中的API金鑰。

如需如何取得及使用適用于Xamarin的API金鑰的詳細資訊,請參閱取得Google地圖Api金鑰。

安裝GooglePlayServicesSDK GooglePlayServices是Google提供的技術,可讓Android應用程式利用各種Google功能,例如Google+、In-App帳單和地圖。

這些功能可在Android裝置上以背景服務的形式存取,這些裝置包含在GOOGLEPLAYSERVICESAPK中。

Android應用程式會透過GooglePlayServices用戶端程式庫與GooglePlayServices互動。

此程式庫包含個別服務(例如地圖)的介面和類別。

下圖顯示Android應用程式與GooglePlayServices之間的關聯性: Android地圖API是GooglePlayServices的一部分來提供。

在XamarinAndroid應用程式可以使用地圖API之前,必須使用AndroidSDK管理員安裝GooglePlayServicesSDK。

下列螢幕擷取畫面顯示AndroidSDK管理員可以在何處找到GooglePlayservices用戶端: 注意 GooglePlayservicesAPK是可能不會出現在所有裝置上的授權產品。

如果未安裝,Google地圖將無法在裝置上運作。

安裝>xamarin.googleplayservices.base。

從NuGet地圖套件 地圖>xamarin.googleplayservices.base套件包含適用于GooglePlayServices地圖API的Xamarin.Android系結。

若要加入GooglePlayServices對應封裝,請在方案總管中,以滑鼠右鍵按一下專案的[參考]資料夾,然後按一下[管理NuGet封裝...: 這會開啟NuGet封裝管理員。

按一下[流覽],然後在[搜尋]欄位中輸入XamarinGooglePlayServices地圖。

地圖選取[>xamarin.googleplayservices.base],然後按一下[安裝]。

(如果先前已安裝此套件,請按一下[更新]。

): 請注意,也會安裝下列相依性套件: >xamarin.googleplayservices.base基底 >xamarin.googleplayservices.base >xamarin.googleplayservices.base 指定必要的許可權 應用程式必須識別硬體和許可權需求,才能使用Google地圖API。

GooglePlayServicesSDK會自動授與某些許可權,因此開發人員不需要明確地將它們新增至AndroidManfest.XML: 存取網路狀態–地圖API必須能夠檢查是否可以下載地圖底圖。

網際網路存取-必須有網際網路存取權,才能下載地圖底圖,並與GooglePlay伺服器進行通訊以進行API存取。

您必須在Google地圖AndroidAPI的AndroidManifest.XML中指定下列許可權和功能: OPENGLesv2–應用程式必須宣告OpenGLesv2的需求。

Google地圖Api金鑰–api金鑰是用來確認應用程式已註冊,且已獲授權可使用GooglePlayServices。

如需此金鑰的詳細資訊,請參閱取得Google地圖API金鑰。

要求舊版的APACHEHTTP用戶端–以Android9.0(API層級28)或以上版本為目標的應用程式,必須指定舊版ApacheHTTP用戶端是要使用的選擇性程式庫。

存取GoogleWeb服務–應用程式需要存取googleweb服務的許可權,以存取Android地圖API。

GooglePlayServices通知的許可權–應用程式必須獲得從GooglePlayServices接收遠端通知的許可權。

存取位置提供者–這些是選擇性的許可權。

它們可讓GoogleMap類別在地圖上顯示裝置的位置。

此外,Android9已從bootclasspath移除ApacheHTTP用戶端程式庫,因此以API28或更高版本為目標的應用程式無法使用該程式庫。

您必須將下列程式程式碼新增至application檔案的application節點,才能在以API28或更高版本為目標的應用程式中繼續使用ApacheHTTP用戶端: ... 注意 舊版GooglePlaySDK需要應用程式來要求WRITE_EXTERNAL_STORAGE許可權。

GooglePlayServices最近的Xamarin系結不再需要這項需求。

下列程式碼片段是必須新增至AndroidManifest.XML的設定範例: .permission.MAPS_RECEIVE"/> .permission.MAPS_RECEIVE"android:protectionLevel="signature"/>



請為這篇文章評分?