gpt4 book ai didi

ios - 在应用程序关闭时从 cancelByProducingResumeData 保存数据 [iOS7]

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:18:32 24 4
gpt4 key购买 nike

我正在 AFNetworking 的帮助下下载大文件 ~50-100Mb,我想在应用程序终止时保存它的下载状态以便稍后恢复下载。我已注册我的对象以终止通知:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appWillTerminate) name:UIApplicationWillTerminateNotification object:nil];

当用户从应用程序切换器关闭应用程序时调用此方法:

-(void)appWillTerminate {
NSLog(@"---------- will terminate");
[downloadTask cancelByProducingResumeData:^(NSData *resumeData) {
if(resumeData) {
[self saveResumeData:resumeData];
} else {
[[NSFileManager defaultManager] removeItemAtPath:[self createCachePath] error:nil];
}
}];
}

但是这个 block :^(NSData *resumeData) 从未被调用,所以我无法保存简历数据。
此外,当应用程序首先移至后台然后关闭时,根本不会调用此方法。我不想在进入后台时调用此方法,因为我想继续下载。我做错了什么吗?

最佳答案

尝试更改逻辑:添加“暂停按钮”,如果用户要关闭应用程序,则需要先暂停下载,然后再关闭应用程序。如果用户忽略暂停,从您之前或从头保存的位置恢复下载不是问题。这里的主要内容 - 继续在后台下载。

关于ios - 在应用程序关闭时从 cancelByProducingResumeData 保存数据 [iOS7],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22599673/

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