UIApplication *application = [UIApplication sharedApplication];
UIBackgroundTaskIdentifier background_task = 0;
background_task = [application beginBackgroundTaskWithExpirationHandler: ^{
[application endBackgroundTask:background_task];
}];
SEL selector = NSSelectorFromString(action);
timer = [NSTimer scheduledTimerWithTimeInterval:floatUpdateInterval target:self selector:selector userInfo:nil repeats:YES];
即使在backgroundTimeRemaining为0(零)之后,上述代码(计时器)仍在运行。 怎么会这样?上述类型的方法不是最多10分钟吗?
以上代码是否可以安全提交“app store”?
答案 0 :(得分:0)
您正在创建一个计划重复的计时器。当时间到了,将调用beginBackgroundTaskWithExpirationHandler,这是你有机会阻止任何没有及时完成的事情。
您应该在beginBackgroundTaskWithExpirationHandler中使计时器无效。