Entwickeln Sie derzeit eine App, die den letzten Standort von CLLocationManager abrufen muss (ohne regelmäßiges Tracking). Es ist egal, wie alt, genau es ist. Ich brauche das Tracking nicht und möchte es starten. Ich muss nur einen letzten Ort aus dem Cache holen und das war's. IMHO, CLLocationManager ist eine gemeinsame Komponente in iOS und wenn einige App Location Tracking verwendet, sollte eine andere App in der Lage sein, den neuesten Standort aus CLLocationManager.location zu verwenden. Es sollte ausreichen, nur CLLocationManager zuzuweisen/init und seinen Speicherort zu greifen. Wie auch immer, es ist nicht. Ich habe auf iPhone4 getestet - google maps gestartet, meinen aktuellen Standort gesehen, bin dann zu meiner App gegangen, aber nach der [[CLLocationManager alloc] init] location Eigenschaft ist nil.Sollte eine App die Standortverfolgung starten, um den letzten bekannten Standort von CLLocationManager zu erhalten?
UPDATE: versucht [locationManager startUpdatingLocation]; und [locationManager stopUpdatingLocation]; aber das Ergebnis ist das gleiche. Ich denke, die einzige Lösung ist das regelmäßige Tracking zu beginnen?
UPDATE2: Seltsam, aber es gibt keine Warnung mit "Die App möchte Standortdienste verwenden" nach alloc/init von CLLocationManager. Hier ist mein Code-Fragment:
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
[locationManager startUpdatingLocation];
[locationManager stopUpdatingLocation];
NSLog(@"%@", locationManager.location); //prints nil
Ich empfehle Ihnen, schauen Sie in [Wie Sie Ihren aktuellen Standort mit Corelocation finden] (http://stackoverflow.com/questions/6516967/how-to-find- your-current-location-with-corelocation) und speichern Sie den Speicherort in einem 'NSArray'. –