我在功能中添加了长时间运行的任务,如'后台获取'并添加此代码。我是否可以在所有后台应用程序生命周期中进行更新?
- (void)applicationDidEnterBackground:(UIApplication *)application
{
UIApplication *app = [UIApplication sharedApplication];
UIBackgroundTaskIdentifier bgTask = 0;
bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
[app endBackgroundTask:bgTask];
}];
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(backgroundUpdate) userInfo:nil repeats:YES];
[timer fire];
}
不行。
当应用程序在后台运行时,即使你添加了后台取回或类似的功能,你也不能将计时器设置为反复触发。添加后台模式功能并不能使你的应用程序在后台自由运行,后台模式有限制和限制。
关于这个话题有很多很多以前的问题,做一些搜索并阅读它们