Ich möchte die Anzahl der Satelliten, die meine GPS verwendet, aber egal was ich es immer 0 zurückgeben. Ich habe gegoogelt und viel über Menschen gelesen mit dem gleichen oder ähnlichen Problem, aber keine der Fixes schien für mich zu funktionieren. Es wäre immer noch zurückkehren nur 0.Android Xamarin C#: Holen Sie sich die Anzahl der Satelliten für GPS-Standort
Hier ist meine Funktion:
private static int TotalSatillites(Android.Locations.LocationManager locationProviders)
{
var gpsStatus = locationProviders.GetGpsStatus(null);
var satilliteIterator = gpsStatus.Satellites.Iterator();
var totalSatillies = 0;
while (satilliteIterator.HasNext)
{
var satillite = (GpsSatellite)satilliteIterator.Next();
if (satillite.UsedInFix())
{
totalSatillies++;
}
}
return totalSatillies;
}
AFAIK arbeiten Dies sollte aber offenbar nicht, und ich kann nicht herausfinden, warum. Ich habe auch versucht Standorte Extras wie so verwenden:
var sats = location.Extras.GetInt("satellites");
Aber dies auch nur jemals zurückkommt 0.
Hinweis: ich dies ganz im Android-Emulator mich entschieden, und ich bin den Standort per Telnet Einstellung mit dem Befehl:
geo fix 9 9 9 9
Welche lat und lange bis 9, Höhe bis 9 und Satelliten bis 9. Diese (sollte?) gesetzt soll arbeiten, wie mein Code, um die 9s für lat lang und alt und dann versucht wird um die Satellitennummern zu bekommen.
Hey danke für die Antwort, ich habe versucht, deine Antwort in meinen Code zu implementieren, aber es kommt immer noch als 0, auf der Sat.HasNext Zeile wird es immer sagen, der Iterator hat keine nächste und überspringe den While Block. – wootank
Ich bin mir nicht sicher über die Besonderheiten der Verwendung von 'geo fix', da ich erwähnt habe, dass ich dies nur auf einem physischen Gerät getestet habe. Es gibt weitere Dokumentation zu Mock-Daten hier: http://developer.android.com/guide/topics/location/strategies.html#MockData Andernfalls können Sie versuchen zu sehen, ob Ihr Emulator diese Art von Funktionalität über eine Standort-GUI bietet (The new Android SDK-Tools 25.1+ haben diese Funktionalität eingebaut) - http://android-developers.blogspot.com/2016/04/android-studio-2-0.html Ich würde dir persönlich empfehlen, in ein Android-Gerät zu investieren Testen von Orten/Karten/etc, da es einfacher ist. –