Como faço para que meu aplicativo execute um NSTimer em segundo plano?
Estou fazendo um aplicativo de benchmark SOMENTE para fins de teste. Não pretendo que isso vá para a App Store.
O que eu preciso é do meu NSTimer para continuar executando em segundo plano usando um UIBackgroundTaskIdentifier, salvar dados em um banco de dados Core Data e finalmente enviar os dados para um servidor (estou usando o Parse), após um determinado intervalo de tempo, é clar
Então, basicamente, eu não encontrei nenhuma pergunta que se aplica ao meu caso específico. Defino meu NSTimer da seguinte forma:
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];
o método updateCoreData simplesmente chama a classe Core Data e faz as inserções necessária
Eu li sobre o VoIP e a parte musical, mas não sei exatamente qual deles se aplicaria melhor ao meu caso, nem como implementá-lo