我正在尝试下载大视频(400毫b)到后台连续.直到视频结束在iOS-7使用Xcode-5。但是在10到5分钟后,下载就停止了。
我编写了如下代码,并设置了“后台获取模式是YES”。我的密码有问题吗。
参2:

问题:如何保持我的URL请求,直到我的视频在后台模式下下载?
感谢你的到来。
- (void)applicationDidEnterBackground:(UIApplication *)application
{
UIApplication *app = [UIApplication sharedApplication];
UIBackgroundTaskIdentifier m_backgroundTaskId;
m_backgroundTaskId = [[UIApplication sharedApplication]
beginBackgroundTaskWithExpirationHandler:^(void) {
m_isWentBackground = YES;
[m_dataController saveUnfineshedDownoadsToFile];
[[UIApplication sharedApplication]
endBackgroundTask:m_backgroundTaskId];
m_backgroundTaskId = UIBackgroundTaskInvalid;
}];
}发布于 2014-02-12 08:36:57
如果你做错了,beginBackgroundTaskWithExpirationHandler会给你额外10分钟的下载时间,但是如果你想要真正的背景下载,你必须查看背景传输服务
您有两个教程:
发布于 2014-02-12 07:27:33
beginBackgroundTaskWithExpirationHandler of UIApplication被认为是一种“任务终结器”。您的代码没有什么问题,但问题在于这段代码的目的。此操作将保持最多10分钟的存活时间,由操作系统决定任务的运行时间。如果您正在下载一个400 is的视频,这不是您所需要的。您应该考虑另一种方法来完成此任务--这不是在后台操作中。一个后台操作,根据苹果自己的定义,不能持续10分钟以上。
也许,执行排队的后台操作,这将逐步追加数据,直到你有完整的视频?还是在应用程序不在另一个线程的背景下执行此操作?
默认情况下,400 as的视频听起来不像是移动设备应该做的事情。
发布于 2014-02-12 07:32:37
在ios中,后台处理最多只允许10分钟,除非您的应用程序属于下列类型之一。
有关更多信息,请参考以下内容。
任务/
https://stackoverflow.com/questions/21721094
复制相似问题