Frage

Zur Zeit meine Anwendung fragt nur einmal um die Erlaubnis, den aktuellen Standort zu verwenden. Wenn der Benutzer nicht zulässt, wird er nicht wieder fragen, es sei denn, er Lage Warnung in den allgemeinen Einstellungen zurückgesetzt. Ich möchte dem Benutzer die Möglichkeit aus der App heraus geben, später diese Erlaubnis zu erteilen. Mit anderen Worten, sollte der Dialog wieder angezeigt werden, wenn er eine bestimmte Taste drückt. Ist das möglich?

Vielen Dank für Ihre Beratung.

War es hilfreich?

Lösung

New Antwort: Jetzt in iOS 8 Sie können programmatisch die Geräteeinstellungen App öffnen:

NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
[[UIApplication sharedApplication] openURL:url];

Wenn Sie früher iOS-Versionen unterstützen und wollen sicherstellen, dass diese behandelt werden können, dies tun:

if (&UIApplicationOpenSettingsURLString != NULL) {
   NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
   [[UIApplication sharedApplication] openURL:url];
}
else {
  //Earlier iOS version
}

Alte Antwort: Es gibt keine Möglichkeit, die ich kenne, die native Popup zu zwingen, zu erscheinen (und erlauben dem Benutzer, auf die Einstellungen Seite zu springen).

Sie können die folgende Methode verwenden, um festzustellen, ob der Benutzer die Ortungsdienste für Ihre Anwendung erlaubt hat: CLLocationManager:

+(CLAuthorizationStatus)authorizationStatus

Sie können auch, wenn die Ortungsdienste global erfahren Sie sind auf der Geräteebene aktiviert oder nicht, auch: CLLocationManager:

+(BOOL)locationServicesEnabled

Andere Tipps

[CLLocationManager locationServicesEnabled] sagt Ihnen, nur wenn die Standorte Dienste auf dem Gerät aktivieren sind.

dieser Dokument.

[CLLocationManager authorizationStatus]

wird eine davon zurückgeben

typedef enum {
   kCLAuthorizationStatusNotDetermined = 0,
   kCLAuthorizationStatusRestricted,
   kCLAuthorizationStatusDenied,
   kCLAuthorizationStatusAuthorized
} CLAuthorizationStatus;

, wenn das Ergebnis kCLAuthorizationStatusDenied Sie könnte den Benutzer sagt der Nutzung der Ortungsdienste zu ermöglichen, von ihm die settings.app Senden

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top