Ich habe Windows 10 Tablette mit "Broadcom GNSS 4752 Geolocation Sensor" unter Sensoren Knoten im Geräte-Manager angezeigt. Ich muss eine Verbindung zu diesem Sensor herstellen, um den Standort zu lesen, und dann Breiten- und Längengrad daraus extrahieren. Wie kann ich das mit C# erreichen?Lesen von "Broadcom GNSS 4752 Geolocation Sensor" mit C#
Antwort
Überprüfen Sie die UWP-Proben auf GitHub. Es gibt eine Geolocator sample, die GPS verwendet, um Ihren Standort zu finden. Es sieht so aus, als ob die Methode Geolocator.GetGeopositionAsync() diejenige ist, die Sie verwenden sollten, um lat/long zu erhalten.
Sie können Windows.Devices.Geolocation API für Desktop-Anwendung verwenden.
Es funktioniert auf Windows 8/8.1/10 mit installierter Plattformlokalisierung.
Um Namespace zuzugreifen Windows.Devices.Geolocation
Sie Zielplattform Version festlegen können von Ihnen 4.5.1
-8.1
und Zielframework .NET-Projekt. Sie können dies tun, indem Sie die Datei .csproj
bearbeiten.
Beispiel Teil file.csproj
mit dieser Information über Zielplattform.
<ProjectGuid>{D29050E9-B447-43DE-BA11-0CA8F402200D}</ProjectGuid>
<OutputType>Exe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ConsoleApplication1</RootNamespace>
<AssemblyName>ConsoleApplication1</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<TargetPlatformVersion>8.1</TargetPlatformVersion>
<FileAlignment>512</FileAlignment>
Wenn die Projektdatei aktualisiert haben, können Sie Verweis auf die Assembly hinzufügen. Sie sollten auch einen Verweis auf hinzufügen.
Beispielcode, wie Position sammeln:
static void Main(string[] args)
{
myGeolocator = new Geolocator() { DesiredAccuracy = PositionAccuracy.High };
var geopositionAsyncResult = myGeolocator.GetGeopositionAsync();
geopositionAsyncResult.Completed = GetGeopositionCompleted;
Console.ReadKey();
}
private static void GetGeopositionCompleted(IAsyncOperation<Geoposition> asyncInfo, AsyncStatus asyncStatus)
{
switch (asyncStatus)
{
case AsyncStatus.Completed:
var result = asyncInfo.GetResults();
var possition = result.Coordinate.Point.Position;
Console.WriteLine(String.Format("Latitude = {0} Longitude = {1}", possition.Latitude, possition.Longitude));
break;
default:
Console.WriteLine(myGeolocator.LocationStatus.ToString());
break;
}
}
Um müssen Sie Gebrauch Geolocation zuzugreifen: Zugang zur Privatsphäre Benutzereinstellungen Fenster - Lage Set Zugang in der Systemsteuerung - Lokalisierung
- 1. Parse GNSS - NMEA Zeichenkette
- 2. Befehlssatz für das Broadcom BCM2835
- 3. Geolocation in C#
- 4. Lesen von Dateinamen mit C++
- 5. Problem mit Geolocation in IE11
- 6. Google Maps Entfernungsrechner MIT Geolocation
- 7. Memcpy vs Pointer Cast zum Lesen BLE Sensor Float
- 8. Geolocation mit JS
- 9. Hinzufügen von Datenpunkten von Nicht-Cumulocity-Sensor
- 10. Geolocation-Marker mit AngularJS
- 11. Wie Google Maps API mit Geolocation (aktuelle Position des Benutzers) mit HTML5 Geolocation Javascript
- 12. Verwendung von ActionCable zusammen mit Geolocation-Diensten
- 13. berechnen Android Sensor Stromverbrauch
- 14. Sensor Zeitstempel Berechnung Fehler
- 15. Gmail lesen von C#
- 16. Bestimmen Sie den Herzschlag mit Arduino mit einem Photoplethysmogramms Sensor
- 17. lesen Socket von C
- 18. TI SensorTag liefert ungültiger Sensor
- 19. Robolectric Sensor Ereignissimulation
- 20. Empfindlichkeit Android Location Sensor
- 21. C++ Lesen von stdin istringstream mit
- 22. Lesen von anderem XML mit C#/DOM
- 23. Lesen von MP3-Informationen mit Ziel c
- 24. Verbinden Sie GPS-Sensor mit Controller drahtlos
- 25. Ausnahme beim Implementieren von Sensor Listener mit Xamarin android
- 26. 403 Fehler mit Google Geolocation api in C#
- 27. Gute Geolocation API von IP
- 28. C# Standardausgabe umleiten und mit Python lesen
- 29. Geolocation funktioniert nicht mit Firefox
- 30. geolocation-marker.js Konflikt mit markerclusterer.js
Nein Ich weiß das, aber ich muss mit einem Sensor auf einem Tablet mit Windows 10 nicht WinRT verbinden. Geolocator funktioniert gut auf WinRT-Geräten wie Handys und Tablets. Aber nicht auf Win32 wie PCs, Laptops und einige Arten von Tablet. –
Windows 10 verwendet viele der gleichen APIs wie RT. Ob es sich um einen PC oder Laptop oder ein mobiles Gerät handelt, ist unerheblich - wenn Sie ein angeschlossenes GPS-Gerät haben, das von Windows 10 als solches erkannt wird, sollten die APIs funktionieren, auf die im Beispiel verwiesen wird. Verwechseln Sie auch nicht Windows 10 mit Win32. –
Ich erinnere mich, dass ich Location-APIs für Windows ausprobiert habe, während ich Windows 8.1-Apps entwickelte, aber es wurde nicht vom GPS-Gerät abgerufen. Es wurde Ort von WLAN und Mobilfunk Daten. –