Windows.Devices.Geolocation 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供 API 來 取得目前位置 ,或追蹤裝置一段時間的位置。 位置資訊可能來自估計來自指標的位置,例如Wi-Fi存取點和資料格塔、來自裝置的 IP 位址,或可能來自其他來源,例如 GNSS 或 GPS 裝置。 Windows.Devices.Geolocation API 提供所有可用來源中最適合的地理位置資料。
位置資訊的正確性取決於來源。 緯度和經度可能會因下列範圍而有所不同:
- GPS: 大約在 10 公尺內
- Wi-Fi: 大約 30 公尺到 500 公尺之間
- 資料格塔: 大約 300 公尺到 3,000 公尺之間
- IP 位址: 大約 1,000 公尺到 5,000 公尺之間
除了緯度和經度之外,GPS 也提供標題、速度和高度的相關資訊。 當位置資訊來自其他來源時,此額外資訊是選擇性的。
使用者可以使用 [設定] 應用程式中的 [位置隱私權設定] 來設定其位置資料的隱私權。 只有在下列情況下,您的應用程式才能存取使用者的位置:
- 此裝置的位置...開啟 (不適用於Windows 10 行動裝置版)
- 已將定位服務設定的 \[位置\] 設為 \[開啟\]
- 在 \[選擇可以使用您的位置的應用程式\] 底下,將您的 app 設為 \[開啟\]
如需位置隱私權的詳細資訊,請參閱 Windows 隱私權聲明。
重要
從 Windows 10 開始,請先呼叫RequestAccessAsync,再存取使用者的位置。 此時,您的 app 必須在前景,且 RequestAccessAsync 必須是從 UI 執行緒呼叫。 在使用者授與您的 app 存取其位置的權限之前,您的 app 將無法存取位置資料。
位置服務架構
位置服務架構的第一層是由裝置中的硬體所組成。 這包括 GPS 接收者、Wi-Fi 和行動資料無線電。 這些都可以作為位置資料的提供者,其精確度和耗電量各有不同層級。 硬體頂端是機器碼層。 此層會直接與位置資料的可用來源通訊,並根據資料的可用性和應用程式指定的效能需求,決定要使用哪些來源來判斷裝置的位置。 原生程式碼層也會透過網際網路與 Microsoft 裝載的 Web 服務通訊,以從資料庫查閱位置相關資訊。 位置服務的最上層是受控介面,會透過 Windows SDK 隨附的 DLL 公開。 應用程式會使用此介面來啟動和停止位置要求、設定應用程式所需的精確度層級,以及從原生程式碼層接收位置資料,因為它可供使用。
類別
CivicAddress |
不支援的 API。 |
GeoboundingBox |
表示定義地理區域的矩形。 |
Geocircle |
描述具有中心點和半徑的地理圓形。 |
Geocoordinate |
包含用來識別地理位置的資訊。 |
GeocoordinateSatelliteData |
提供有關 Geocoordinate的其他資訊。 這項資訊僅適用于使用衛星訊號取得的位置估計值。 |
Geolocator |
提供目前地理位置的存取權。 |
Geopath |
表示已排序的地理點數列。 |
Geopoint |
描述地理點。 |
Geoposition |
表示可能包含緯度和經度資料或場地資料的位置。 |
Geovisit |
表示 Visit 相關狀態變更。 如需如何使用此功能的資訊,請參閱 使用造訪追蹤的指導方針 。 |
GeovisitMonitor |
當應用程式正在使用時,處理使用者的 Visits 監視, (不在背景) 。 |
GeovisitStateChangedEventArgs |
包含 VisitStateChanged 事件的相關資訊。 |
GeovisitTriggerDetails |
管理 Visits 相關背景工作的觸發程式詳細資料。 |
PositionChangedEventArgs |
提供 PositionChanged 事件的資料。 |
StatusChangedEventArgs |
提供 StatusChanged 事件的資訊。 |
VenueData |
代表與地理位置相關聯的場地。 |
結構
BasicGeoposition |
描述地理位置的基本資訊。 |
介面
IGeoshape |
用來定義地理圖形的介面。 |
列舉
AltitudeReferenceSystem |
指出定義地理圖形時要使用的高度參考系統。 |
GeolocationAccessStatus |
指出您的應用程式是否有權存取位置資料。 |
GeoshapeType |
表示地理區域的形狀。 |
PositionAccuracy |
指出應用程式使用的位置資料所要求的正確性層級。 |
PositionSource |
指出用來取得 Geocoordinate的來源。 |
PositionStatus |
指出 Geolocator 物件提供位置資料的能力。 |
VisitMonitoringScope |
包含值,描述要與 Visits 功能搭配使用的位置監視預定範圍。 |
VisitStateChange |
包含描述 Visit 相關狀態變更的值。 |
範例
使用此命名空間類別的範例應用程式包括 地理位置範例 和 Geotag 範例。