我的iOS应用程序有时会被杀死,即使我在"必需的背景模式"下的plist中放置了"应用程序寄存器进行位置更新".
- (void)applicationDidEnterBackground:(UIApplication *)application
{
NSDate *dateEnteredIntoBackground = [NSDate date];
FSLog(@"*** ENTERING BACKGROUND ***");
[application beginBackgroundTaskWithExpirationHandler:^{
NSDate *dateOfTermination = [NSDate date];
}];
}
Run Code Online (Sandbox Code Playgroud)
在监视上面的代码的同时,当它被踢出时,NSDate对象总是相隔10分钟.
但是:为了让事情更加令人困惑,我很多时候应用程序很乐意在后台运行超过30分钟而不会终止.作为一项额外的测试,我将iPhone置于法拉第笼中,以确保不会调用位置委托更新(通过回读书面日志文件来确认); 所以似乎可以排除.
任何线索/建议?
谢谢
卡尔.