我在我的应用程序中使用核心位置框架,我设置位置string在UIBackgroundMode或所需的背景模式(在Xcode 4.2中),以获取更新的位置从didUpdateToLocation方法,当应用程序在后台运行,也通过点击发送这个更新的位置服务器核心位置框架的didUpdateToLocation方法内的具体链接。 我的问题是,在后台运行一段时间后,应用程序将被终止?
我有我的应用程序中的飞行searchfunction,这是花了太长的时间来获取数据(超过25秒)。 如果应用程序进入后台或进入睡眠模式,则互联网连接断开。 我已经写了下面的逻辑使用苹果的例子,使API请求继续,即使如果应用程序去背景,但它不工作。 self.session = [self backgroundSession]; self.mutableData = [NSMutableData data]; NSURL *downloadURL = [NSURL URLWithString:@"http://jsonplaceholder.typicode.com/photos"]; NSURLRequest *request = [NSURLRequest requestWithURL:downloadURL]; self.dataTask = [self.session dataTaskWithRequest:request]; [self.dataTask resume]; – (NSURLSession *)backgroundSession { static NSURLSession *session = nil; static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:@"com.example.apple-samplecode.SimpleBackgroundTransfer.BackgroundSession"]; session = [NSURLSession sessionWithConfiguration:configuration delegate:self delegateQueue:nil]; }); return session; […]
我正在创build一个应用程序,其中我从服务器上下载一些数据。 在后台进行时,我希望该连接应该继续运行,以便可以下载数据。 我知道在AppDelegate有方法 – (void)applicationDidEnterBackground:(UIApplication *)application 这是应用程序进入后台时调用的。 但是,由于连接是在viewController中创build的,它如何在appDelegate中进行pipe理? 还有其他的方法可以做到吗? 我已经通过这个链接,但有一个简单的实施?