So erkennen Sie den Kompasskalibrierungsschalterstatus unter iOS

9

Ich arbeite gerade mit dem CLLocationManager und möchte mich über den aktuellen Kurs des Gerätes informieren. Bis jetzt funktioniert alles gut, Features sind implementiert und jetzt versuche ich meine App zu polieren.

Es gibt einen Eckfall, wenn der Benutzer das compass calibration -Flag in den Benutzereinstellungen abstellt, werden Updates nicht mehr an meine App gesendet. In einem solchen Fall möchte ich dem Benutzer ein Feedback geben, dass er die Kompasskalibrierung erneut einschalten muss, sonst funktioniert meine App nicht.

Ich habe herausgefunden, dass im Fall, dass der Nutzer location services für meine App ausschaltet, ich immer noch eine magnetische Überschrift bekomme. Wenn die Einstellung "Kompasskalibrierung" vom Benutzer deaktiviert wird, erhalte ich keine Aktualisierungen mehr. Aber wie kann ich über das CoreLocation -Framework erkennen, dass "Kompasskalibrierung" ausgeschaltet wurde?

Die " CLLocationManagerDelegate " gibt mir ein Update durch die

%Vor%

Methode. Der Status zeigt jedoch nur an, ob die "Location Services" für meine App aktiviert sind.

Ich habe auch versucht, einige gültige Informationen durch das

zu bekommen %Vor%

delegate Methode, ohne Erfolg.

Gibt es etwas im CoreLocation -Framework, das mir sagen kann, ob das Flag "Kompasskalibrierung" ein- / ausgeschaltet ist.

    
Alathink 05.12.2012, 15:02
quelle

1 Antwort

4

Nach dem, was ich gefunden habe, sollte newHeading.trueHeading in locationManager:didUpdateHeading: -1 sein, wenn die Kompasskalibrierung ausgeschaltet ist. Dies sollte es tun:

%Vor%     
Rick 04.01.2015 17:52
quelle