2017-01-06 4 views
1

Как это возможно, что приложение типа «blitzer.de» enter image description here может работать непрерывно в фоновом режиме? enter image description here Я пытаюсь создать приложение, подобное этому, и пусть оно работает примерно на 2 часа в фоновом режиме, в то время как оно использует данные gps. Мои исследования сказали мне, что яблоко очень строго связано с фоновым бегом и отменит процесс за 3 минуты. Также выбор будет завершен через 6 мин. Любая помощь будет оценена по достоинству.ios app background run

+0

проверить эту ссылку http://stackoverflow.com/a/35517630/2050181 –

+0

Отметьте это для начала https://www.raywenderlich.com/143128/background-modes-tutorial-getting-started – AMAN77

ответ

1

@Johannes

1) Любое приложение может работать в фоновом режиме не более 10 мин . но здесь есть исключения для Background Enabled App. Таким образом, вы должны включить фоновый режим из

Возможности> Фоновый режим enter image description here

2) Теперь вы должны спросить разрешение на Location Tracking - Всегда в приложения info.plist

NSLocationAlwaysUsageDescription --- Мне нужно Местонахождение

NSLocationWhenInUseUsageDescription --- Мне нужно Местонахождение

конфиденциальности - место описание использования --- Мне нужно Местоположение

enter image description here

3) Теперь самое главное. Код

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). setPausesLocationUpdatesAutomatically: НЕТ Позволяет вашему приложению работать непрерывно.

+1

С iOS 9 10 мин было изменено на 3 мин. – rckoenes

+1

Последним (не кодирующим и, возможно, самым сложным) шагом является отправка приложения в Apple в качестве навигационного приложения и получение согласия на его утверждение. Если вы не являетесь обычным навигационным приложением, это сложная продажа. –

+0

@rocoenes, если вы запрашиваете разрешение на размещение в любое время, вы получите больше времени для фона, чем вы думаете. –