我正在连续下载500个文件(逐个)每个文件都是 4-5 MB 大小。我已使用NSURLSession
创建backgroundSessionConfigurationWithIdentifier
,因为我的文件也可能在应用程序处于后台模式时下载。
- (NSURLSession *)backgroundSession
{
static NSURLSession *session = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
NSString *bundleIdentifier = [[NSBundle mainBundle] bundleIdentifier];
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:bundleIdentifier];
configuration.HTTPMaximumConnectionsPerHost = 1;
configuration.sharedContainerIdentifier = bundleIdentifier;
session = [NSURLSession sessionWithConfiguration:configuration delegate:self delegateQueue:nil];
});
return session;
}
而且,我使用NSURLSessionDownloadTask
下载文件,一旦下载文件,我就开始下一次下载didFinishDownloadingToURL
委托方法。而且,我的应用代表也有以下这些行。
AppDelegate.h
@property (copy) void(^backgroundSessionCompletionHandler)();
AppDelegate.m
-(void)application:(UIApplication *)application handleEventsForBackgroundURLSession:(NSString *)identifier completionHandler:(void (^)())completionHandler{
self.backgroundSessionCompletionHandler = completionHandler;
}
这是我的问题。一旦我的应用程序进入后台,我的应用程序是否会成功继续此下载过程。我是否已经完成了非中断下载所需的所有设置或者我需要启用更多其他设置吗?
请指导我。