【发布时间】:2014-05-26 19:04:25
【问题描述】:
我正在尝试在我的应用中实现一个看似常见的功能:在后台上传文件。我通过调用-[UIApplication beginBackgroundTaskWithExpirationHandler:] 来运行此类任务,因此这些任务均由UIBackgroundTaskIdentifier 标识。
请看下图。橙色框是我似乎找不到任何答案的问题点。
以下是我寻求指导的问题:
是否可以获得同一应用在上一个会话中启动的正在运行的任务列表?
是否可以将某种元数据(例如 URL 字符串)与后台任务相关联,以便我们知道哪个任务正在上传哪个文件?
【问题讨论】:
-
正如所写,你的问题太模糊了。你是说在后台线程上运行,使用 NSThread、NSOperations 或 GCD 队列吗?还是说当用户将您的应用切换到后台时询问后台时间?
-
我希望操作系统继续上传文件,即使应用程序已关闭或发送到后台。
-
见 Rob 的回答。你想要 NSURLSession。即使您的应用在后台,它也可以让您处理上传/下载。
标签: ios cocoa-touch uibackgroundtask