Я работаю над приложением в xcode-5, мне нужно загрузить некоторые данные в фоновом режиме, мне нужно, чтобы код кода повторялся до тех пор, пока устройство не завершит работу фоновый процесс. Я могу сделать это один раз, но мне нужно повторять снова и снова, чтобы я мог проверить подключение и выполнить загрузку. Я делаю то же самое, когда приложение входит в активный режим. В настоящее время я использую Таймеры со следующим кодом:Как повторно запускать процесс повторно в фоновом режиме в xcode
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[bgrdTimer_ActiveMode invalidate];
bgrdTimer_ActiveMode=nil;
self.backgroundTask=[application beginBackgroundTaskWithExpirationHandler:^{
self.backgroundTask=UIBackgroundTaskInvalid;
}];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),^{
bgrdTimer_BackGroundMode=[NSTimer scheduledTimerWithTimeInterval:40.00 target:self selector:@selector(repeatUploadProcess_BackGroundMode) userInfo:nil repeats:YES];
});
}
- (void)applicationDidBecomeActive:(UIApplication *)application
{
[bgrdTimer_BackGroundMode invalidate];
bgrdTimer_BackGroundMode=nil;
bgrdTimer_ActiveMode=[NSTimer scheduledTimerWithTimeInterval:40.00 target:self selector:@selector(repeatUploadProcess_ActiveMode) userInfo:nil repeats:YES];
}
repeatUploadProcess_ActiveMode и repeatUploadProcess_BackGroundMode являются методами, содержащих набор кода, который предполагает, чтобы быть повторен
проблема, когда я обесцениваю bgrdTimer_ActiveMode другого таймер dosn't вызывается.
Если у кого-то есть лучшее альтернативное решение, которое выполнило бы мои требования, то, пожалуйста, предложите. – User6391