Ich versuche, eine Anwendung zu entwickeln, die so etwas wie ein Spiel sein sollte. Der Benutzer hätte einige Orte in einer Stadt und er müsste an jedem Ort etwas unternehmen. Um die Position des Benutzers zu verfolgen, habe ich mit Geolokalisierung mit dem folgenden Code versucht:Geolocation in C#
Geolocator geolocator = new Geolocator();
//geolocator.DesiredAccuracy = Windows.Devices.Geolocation.PositionAccuracy.High;
geolocator.DesiredAccuracyInMeters = 50;
try
{
Geoposition geoposition = await geolocator.GetGeopositionAsync(TimeSpan.FromMilliseconds(500), TimeSpan.FromSeconds(1));
textLatitude.Text = "Latitude: " + geoposition.Coordinate.Latitude.ToString("0.0000000000");
textLongitude.Text = "Longitude: " + geoposition.Coordinate.Longitude.ToString("0.0000000000");
textAccuracy.Text = "Accuracy: " + geoposition.Coordinate.Accuracy.ToString("0.0000000000");
}
Mit Hilfe die folgende Art und Weise die Koordinaten zu bekommen habe ich versucht, das Gerät zu testen, ob meine Position ortet korrekt mit dem folgenden Code:
if(Math.Abs(geoposition.Coordinate.Latitude - 45.3285) < 0.001){
if (Math.Abs(geoposition.Coordinate.Longitude - 14.4474) < 0.001)
{
txt.Text = "KONT";
}
}
das Problem ist, dass die Genauigkeit der Lage ist wirklich klein, wenn ich genauer Koordinaten würde es nie wieder die gleichen Koordinaten erhalten, und mit diesem Code ist die Genauigkeit ist wirklich schlecht versuchen, mit (es kann scheitern sogar 300 Meter).
Hat jemand eine Idee, wie man einen zuverlässigeren Standort erhält, oder eine andere Möglichkeit, das zu beheben?
thx, ich werde das versuchen morgen (Ich habe das Telefon gerade nicht, um es zu testen) ich hoffe, dass es funktioniert :) – user2700896
@ user2700896 Wenn Sie nicht sicher sind, dann markieren Sie es nicht als sol ved - mach es wenn du es einmal testest :) In diesem Fall sollte es funktionieren, aber es könnte andere Probleme gegeben haben. – Romasz