laptop and a wrench

Bug

The Location.Velocity property is not reporting in the WPF application for .NET Runtime SDK on Surface Pro 4.

Zuletzt veröffentlicht: March 30, 2018 ArcGIS Runtime SDK
Bug-ID-Nummer BUG-000110589
EingereichtJanuary 4, 2018
Zuletzt geändertJune 5, 2024
Gilt fürArcGIS Runtime SDK
Gefunden in Version100.1.0
BetriebssystemWindows OS
Betriebssystemversion10.0 64 Bit
StatusWill Not Be Addressed

Zusätzliche Informationen

The reason Collector for Windows is reporting the Course and Speed values is it is a UWP app and is using the Windows 10 Windows.Devices.Geolocation.Geolocator API. By contrast, the ArcGIS Runtime WPF API uses the .NET Framework System.Device.Location.GeoCoordinateWatcher API. There appears to be an underlying issue in System.Device.Location.GeoCoordinateWatcher, which means that the values set is not visible. There are a few reasons for this, such as issues related to driver or a Windows / .NET Framework. You will be able to reproduce this outside of the ArcGIS Runtime by extending the sample for GeoCoordinateWatcher to report Course and Speed values: https://msdn.microsoft.com/en-us/library/system.device.location.geocoordinatewatcher(v=vs.110).aspx. Workarounds: The Windows 10 API will report the values. To retrieve these values in your custom application you have two options: #1. Use the NMEA feed from the GPS instead of using the Windows location service (for an example see https://github.com/dotMorten/NmeaParser/tree/ArcGISLocationProvider). Depending on your requirements, we would typically recommend this approach due to the extra information you can obtain regarding the quality of the position. This is the preferred approach for Collector. #2. Use the Windows 10 API (within the existing WPF application). For more information on accessing Windows 10 APIs from within WPF projects see https://blogs.windows.com/buildingapps/2017/01/25/calling-windows-10-apis-desktop-application. Having referenced the assembly and winmd, you can use the newer API for updates e.g. ``` Geolocator locator = new Windows.Devices.Geolocation.Geolocator(); … locator.PositionChanged += Locator_PositionChanged; … private void Locator_PositionChanged(Windows.Devices.Geolocation.Geolocator sender, Windows.Devices.Geolocation.PositionChangedEventArgs args) { var position = args.Position; var heading = position.Coordinate.Heading; var speed = position.Coordinate.Speed; Debug.WriteLine("Heading: " + heading); Debug.WriteLine("Velocity: " + speed); }); } ```

Schritte zur Reproduzierung

Bug-ID: BUG-000110589

Software:

  • ArcGIS Runtime SDK

Benachrichtigung erhalten, wenn sich der Status eines Bugs ändert

Esri Support App herunterladen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln