gpt4 book ai didi

ios - 在后台继续下载

转载 作者:技术小花猫 更新时间:2023-10-29 10:34:13 25 4
gpt4 key购买 nike

我正在创建一个应用程序,其中我正在从服务器下载一些数据。在进入后台时,我希望该连接应该继续运行,以便可以下载数据。我知道 appDelegate

中有方法
- (void)applicationDidEnterBackground:(UIApplication *)application  

当应用程序进入后台时调用。但是连接是在viewController中创建的,如何在appDelegate中管理呢?
还有其他方法可以做到吗?我经历了this链接但是有什么简单的实现吗?

最佳答案

执行某些在后台继续的操作的一种方法是创建一个单独的线程来执行下载。在线程内,将您的下载操作放在对 beginBackgroundTaskWithExpirationHandler: 和 endBackgroundTask 的调用之间。你不需要检查你是否在后台运行,你只是总是调用这两个方法。

// Tell iOS this as a background task in case we get backgrounded
UIBackgroundTaskIdentifier taskId = [[UIApplication sharedApplication]
beginBackgroundTaskWithExpirationHandler:NULL];

//----------------------------------------------
// Perform your download operations here
//----------------------------------------------
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];

// Tell iOS that we are done with stuff that needed to keep going even if backgrounded
[[UIApplication sharedApplication] endBackgroundTask:taskId];

关于ios - 在后台继续下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11100874/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com