我有一个带有下载功能的iOS应用程序。它将文件下载到临时文件夹,然后将其移动到特殊文件夹。但是这个过程可能会受到来电的干扰。当应用程序在后台运行足够长时间时,下载过程可能会因系统杀死应用程序而消失。我想知道是否有一个很好的策略来解决它。我能想到的一个解决方案是在应用程序再次启动时检测来电并恢复下载。 你有什么建议吗?谢谢!
答案 0 :(得分:0)
那将是最好的方法。您可以收听AVAudioSessionInterruptionNotification。 你可以得到如下所示的中断类型::
NSDictionary * interruptionDict = notification.userInfo;
NSInteger interruptionType = [[interuptionDict valueForKey:AVAudioSessionInterruptionTypeKey] integerValue];
基于中断类型是否为kAudioSessionBeginInterruption 或者kAudioSessionEndInterruption,你可以做你想做的事。
答案 1 :(得分:0)
要下载,您可以使用iOS 7中引入的background transfer service。即使您的应用程序被推送到后台并且下载需要很长时间,也可以继续下载。
如果需要,您还可以使用操作系统中的可能事件暂停/恢复下载。