我在我的应用程序中执行与SMTP相关的应用程序,以发送邮件。在IOS 4中,音频,voip,location的后台执行异常。如何使用网络操作。
答案 0 :(得分:2)
网络访问没有明确的例外。您可以在应用程序退出后请求额外的时间来完成任务,但是您无法创建在后台持续运行的守护进程。
答案 1 :(得分:0)
Apple提供600秒执行后台任务,您可以使用代码
UIApplication *app = [UIApplication sharedApplication];
self.bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
[app endBackgroundTask:bgTask];
bgTask = UIBackgroundTaskInvalid;
}];
// Start the long-running task
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
while (1) {
NSLog(@"BGTime left: %f", [UIApplication sharedApplication].backgroundTimeRemaining);
[self.viewController performSelector:@selector(invokeCuisineSelector)];
sleep(1);
}
});