2017-01-06 2 views
1

wie ist es möglich, dass eine app wie "blitzer.de" enter image description here kontinuierlich im hintergrund laufen kann? enter image description here Ich versuche, eine App wie diese zu erstellen und lasse sie für etwa 2 Stunden im Hintergrund laufen, während sie die GPS-Daten verwendet. Meine Nachforschungen haben mir gesagt, dass Apple sehr strikt im Hintergrund läuft und den Prozess in 3 min abbrechen wird. Auch der Abruf endet in 6 Minuten. Jede Hilfe wird geschätzt.ios app hintergrund run

+0

überprüfen Sie diesen Link http://stackoverflow.com/a/35517630/2050181 –

+0

Überprüfen Sie diese für Anfänger https://www.raywenderlich.com/143128/background-modes-tutorial-getting-started – AMAN77

Antwort

1

@Johannes

1) Jede App im Hintergrund nicht mehr laufen kann 10 min. aber hier ist eine Ausnahme für Hintergrund aktiviert App. So müssen Sie Hintergrundmodus aus

Capabilities> Hintergrund-Modus enter image description here

2) ermöglichen Nun müssen Sie die Berechtigung für Location-Tracking fragen - Immer in App info.plist

NSLocationAlwaysUsageDescription --- Ich brauche Standort

NSLocationWhenInUseUsageDescription --- Ich brauche Standort

Privatsphäre - Standort Nutzung Beschreibung --- Ich brauche Lage

enter image description here

3) Jetzt wichtig Most. der Code

self.locationManager = [[CLLocationManager alloc]init]; // initializing locationManager 
    _locationManager.desiredAccuracy = kCLLocationAccuracyBest; // setting the accuracy 
    [self.locationManager requestAlwaysAuthorization]; 
    self.locationManager.delegate = self; 
    if([self.locationManager respondsToSelector:@selector(allowsBackgroundLocationUpdates)]) { 
     [self.locationManager setAllowsBackgroundLocationUpdates: YES]; 
    } 
    self.locationManager.distanceFilter = 50 ; // 
    self.locationManager.activityType=CLActivityTypeAutomotiveNavigation; 
    [self.locationManager startUpdatingLocation]; 
    [self.locationManager setPausesLocationUpdatesAutomatically:NO]; 

4). setPausesLocationUpdatesAutomatisch: NO Lässt Ihre App kontinuierlich laufen.

+1

Seit iOS 9 Die 10 Minuten wurden auf 3 Minuten geändert. – rckoenes

+1

Der letzte (nicht codierende und vielleicht der schwierigste) Schritt besteht darin, Ihre App als Navigations-App an Apple zu senden und sie dazu zu bringen, sie zu genehmigen. Wenn Sie keine normale Navigations-App sind, ist es ein harter Verkauf. –

+0

@rocoenes Wenn Sie die Standortberechtigung für immer anfordern, erhalten Sie mehr Zeit für den Hintergrund als Sie denken. –