遷移至位置與內容 API

針對需要定位服務的應用程式,Google 建議在 Google Play 服務中使用位置與內容 API。如果應用程式使用架構位置 API,請務必遷移至 Google Play 服務,以便善用 Google 提供的最新功能。

建議選擇使用 Google Play 服務,在應用程式中取得定位服務,原因如下:

  1. Google Play 服務提供簡單的介面和更加簡潔的 API 途徑。
  2. 您指定所需的服務品質,然後 API 會為您管理基礎技術。
  3. Google Play 服務 API 已針對效能和電池用量進行最佳化。
  4. Google Play 服務 API 會主動維護。Google 會持續改進演算法,並新增更多功能。

請更新應用程式

下列步驟說明更新應用程式的過程,以便使用位置與內容 API:

  1. 在專案中設定 Google Play 服務。
  2. 更新應用程式,以使用位置資訊設定 API 驗證目前的位置資訊設定。
  3. 取代用於複雜工作的自訂邏輯,例如透過地理圍欄 API、動作辨識 API 等高階 API,嘗試識別使用者是否接近某個區域,或嘗試猜測使用者採取的行動。
  4. 從使用架構位置 API 變成使用整合式位置預測提供工具 API。
  5. 移除架構位置 API 的參照。

在專案中設定 Google Play 服務

若要為專案提供位置與內容 API,需要新增 Google Maven 存放區的參照,並宣告必要 API 的依附元件。詳情請參閱設定 Google Play 服務

使用位置資訊設定 API

只要使用位置資訊設定 API,應用程式就會提供所需的 QoS 級別,而且 API 會要求使用者適當變更系統設定。請依下列步驟操作,在應用程式中使用位置資訊設定 API:

  1. 在應用程式資訊清單中要求位置存取權
  2. 設定 LocationRequest 物件,指定所需的 QoS 層級。
  3. 使用位置資訊設定 API 檢查目前的設定。

詳情請參閱變更位置資訊設定,或參閱 Google Play 位置範例,取得示範程式碼。

以高階 API 取代自訂邏輯

高階 API (例如地理圍欄 API 和動作辨識 API) 可提供必要功能,讓應用程式能夠提供優質體驗。不過,這類功能需要複雜的邏輯,很難編程及維護。如果應用程式具備這類自訂邏輯,請將其替換成運用高階 API 的元件。

如需實作詳細資料,請參閱特定位置和內容 API 的指南。

將架構位置 API 替換為整合式位置預測提供工具 API

您可使用整合式位置預測提供工具 API 來取得位置資料,例如經緯度。整合式位置預測提供工具 API 會使用 Location 物件 (如同位置架構 API) 來表示地理位置。這個 API 提供監聽位置更新的功能,以及取得最後已知位置的功能。這些功能都讓整合式位置預測提供工具 API 更適合用來替代使用架構位置 API 的元件,而且對應用程式的其他部分的變更也最少。

取得最後已知位置是許多體驗的良好切入點,因為這是使用裝置上的任何用戶端要求的位置資料的快速作業。若要定期追蹤位置,應用程式可訂閱接收位置更新通知,藉此提供最新資料,並實現更複雜的體驗。

移除架構位置 API 的參照

除整合式位置預測提供工具 API 使用的 Location 類別參照外,將 com.google.android.location 套件中的類別參照替換為 com.google.android.gms.location 套件中的類別。您通常可以從應用程式中移除管理不同提供工具的元件 (例如 GPS 和 Wi-Fi)。位置與內容 API 會自動管理這些提供工具。

測試應用程式

若要執行使用最新版 Google Play 服務的應用程式,須備有已安裝 Play 商店應用程式的裝置,並且需要登入 Google 帳戶。在開發方面,您可以使用下列選項:

  • 透過 USB 傳輸線連接至開發環境的實體裝置。
  • 已安裝 Play 商店應用程式的模擬器。

若要進一步瞭解如何將實體裝置連接至開發環境,請參閱在硬體裝置上執行應用程式。若要建立包含 Play 商店應用程式的模擬器,請參閱建立和管理虛擬裝置