相关疑难解决方法(0)

NSURLSession didFinishDownloadingToURL找不到临时下载的文件

我对委托方法didFinishDownloadingToURL上的NSURLSession有一个奇怪的问题.

我要做的第一件事是检查临时下载的文件是否存在:

- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask
                                            didFinishDownloadingToURL:(NSURL *)location
{
    if (![[NSFileManager defaultManager] fileExistsAtPath: [location path]])
    {
        NSLog(@"Error. File not found");
        return; // is giving error when the app is wake up by the system
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

当应用程序处于前台并下载完成时,它可以正常工作.但是当应用程序处于后台并被操作系统强制杀死时,它将返回false.

有没有人知道可能会发生什么?我知道当应用程序被操作系统唤醒时,执行此委托方法有一个时间限制,因为临时文件不在那里是没有意义的.我甚至无法将其复制到另一个位置......是否因为文件的大小而有意义?我正在下载+ -130MB的文件.

谢谢.

objective-c download ios nsurlsession

9
推荐指数
1
解决办法
1795
查看次数

下载的文件不存在

我使用本教程在后台下载文件

下载文件时,有2个功能通知我们.我按时间顺序写下它们:

1) - (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask didFinishDownloadingToURL:(NSURL *)downloadURL;

2) - (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didCompleteWithError:(NSError *)error;

在功能1中,我检查下载的文件是否仍然存在.

在功能2中,我检查下载的文件是否存在.我认为它被iOS系统删除了.

你能解释一下为什么吗?谢谢

objective-c ios

3
推荐指数
1
解决办法
2201
查看次数

标签 统计

ios ×2

objective-c ×2

download ×1

nsurlsession ×1