2016-04-08 2 views
-1

Ich arbeite an der Uhr Herzschlag App und ich möchte, wenn Benutzer Herzfrequenz kritisch dann werden wir seinen aktuellen Standort bekommen in (Vordergrund, Hintergrund und beenden) und senden Sie es an unseren Server. Gibt es einen Weg, durch den ich Benutzerposition nur an dieser Position bekomme. Ich möchte nicht jedes Mal seinen Standort aktualisieren.Benutzer aktuellen Standort (lat/lang) in allen App-Status nicht immer nur, wenn meine App ohne Standortmanager Delegat

let locationManager = CLLocationManager() 

in Ihrem Controller:

+0

Mögliches Duplikat [Wie kann ich aktuelle Position von Benutzern in iOS erhalten] (http://stackoverflow.com/questions/4152003/how-can-i-get-current-location -from-user-in-ios) –

Antwort

2

Um Benutzer Ort, den Sie müssen erklären, zu erhalten.

Dann in viewDidLoad Sie haben für die Lage und initialisieren CLLocationManager get Prozess zu beantragen:

// Ask for Authorisation from the User. 
self.locationManager.requestAlwaysAuthorization() 

// For use in foreground 
self.locationManager.requestWhenInUseAuthorization() 

if CLLocationManager.locationServicesEnabled() { 
    locationManager.delegate = self 
    locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters 
    locationManager.startUpdatingLocation() 
} 

Sie erhalten Lage in CLLocationManagerDelegate:

func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { 
    var location:CLLocationCoordinate2D = manager.location.coordinate 
    print("locations = \(location.latitude) \(location.longitude)") 
} 

In Ihrem info.plist Sie haben NSLocationAlwaysUsageDescription hinzufügen und eine benutzerdefinierte Warnmeldung, die beim Anfordern des Standorts angezeigt wird.

prost ...

+0

Aber wie bekomme ich den Standort, wenn meine App im gestoppten Zustand ist – Nasib

+0

Bitte geben Sie in der Frage an, dass Sie den Standort im beendeten Zustand wünschen ... –

+0

Wenn ein Benutzer die App beendet, wird sie vom System nicht mehr gewährt die gleichen Privilegien. Hintergrund-Abrufvorgänge und Hintergrundspeicherorte werden erst ausgeführt, wenn der Benutzer sich dazu entschließt, die App erneut zu starten. –

Verwandte Themen