如何防止在 uiviewcontroller 被停用并且存在活动的 urlsessiontask 时崩溃



当我有一个活动的 URLSessionTask 并且用户按下后退按钮并且视图控制器被关闭时,我的 Swift 3 iOS 应用程序崩溃了。 我在后退按钮中的urlsessiontask上调用取消方法,当时没有发生崩溃,但是当用户返回视图控制器时,应用程序崩溃。 如果用户允许 url 会话任务完成,则不会崩溃。 有谁知道我能做些什么来防止崩溃? 我正在使用iOS 10,Swift 3,Xcode 8。 提前谢谢。

如果下载完成时视图控制器可能不存在,则不要使视图控制器成为 URL 会话的委托。

这是一个解决方案:

创建一个作为 URL 会话委托的DownloadManager单一实例,下载完成后将文件保存到磁盘,记录有关已下载文件的信息,然后使用弱委托属性通知委托。

(有些人认为单身人士是万恶之源,永远不应该使用。我不是那种人。在我看来,应用程序范围的下载管理器是单例的绝佳用例。

相关内容

  • 没有找到相关文章

最新更新