Как заставить мое приложение запускать NSTimer в фоновом режиме?
Я делаю тест приложение только для целей тестирования. Я не собираюсь идти в App Store.
Что мне нужно, так это чтобы мой NSTimer продолжал работать в фоновом режиме с использованием UIBackgroundTaskIdentifier, сохранять данные в базе данных Core Data и, наконец, через определенный промежуток времени, наконец, передать данные на сервер (я использую Parse).
В общем, я не нашел никаких вопросов, относящихся к моему конкретному случаю. Я установил свой NSTimer так:
UIBackgroundTaskIdentifier bgTask;
UIApplication *app = [UIApplication sharedApplication];
bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
[app endBackgroundTask:bgTask];
}];
self.timer = [NSTimer scheduledTimerWithTimeInterval:self.localInterval target:self selector:@selector(updateCoreData:) userInfo:nil repeats:YES];
метод updateCoreData просто вызывает класс Core Data и делает необходимые вставки.
Я читал о VoIP и о том, как играть музыку, но точно не знаю, какой из них лучше всего подойдет для моего случая, и как их реализовать.