In iOS8 müssen Sie die Benutzerautorisierung anfordern, bevor Sie ihren Standort abrufen können.
Es gibt zwei Arten der Anfrage:
-[CLLocationManager requestWhenInUseAuthorization]
können Sie nur Benutzer Standort zu erhalten, wenn der App wecken wird.
-[CLLocationManager requestAlwaysAuthorization]
können Sie den Standort des Benutzers abrufen, auch wenn es im Hintergrund ist.
Sie können zwischen ihnen entsprechend wählen.
Zum Beispiel setzen diese, bevor Sie die Aktualisierung Standort starten:
// ask for authorization
CLLocationManager * locationManager = [[CLLocationManager alloc] init];
// check before requesting, otherwise it might crash in older version
if ([locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
[locationManager requestWhenInUseAuthorization];
}
Außerdem vergessen Sie nicht, zwei Schlüssel zu addieren
NSLocationWhenInUseUsageDescription
und
NSLocationAlwaysUsageDescription
in Ihre Info .plist.
Lassen Sie die Werte leer, um die Standardnachrichten zu verwenden, oder Sie können Ihre eigenen anpassen, indem Sie die Werte eingeben.
möglich Duplikat [iOS 8: Location Services nicht funktioniert] (http://stackoverflow.com/questions/24062509/ios-8-location-services-not -working) –