【发布时间】:2011-10-22 12:29:42
【问题描述】:
我正在开发一个能够将数据上传到远程端点的 iOS 应用程序。因为良好的用户体验需要能够在应用上传时离开应用去执行其他任务,所以我是否应该使用beginBackgroundTaskWithExpirationHandler: API 启动所有我的上传?
【问题讨论】:
标签: ios multitasking
我正在开发一个能够将数据上传到远程端点的 iOS 应用程序。因为良好的用户体验需要能够在应用上传时离开应用去执行其他任务,所以我是否应该使用beginBackgroundTaskWithExpirationHandler: API 启动所有我的上传?
【问题讨论】:
标签: ios multitasking
是的。这与the application design guide 中描述的设计模式之一一致:
用
beginBackgroundTaskWithExpirationHandler:和endBackgroundTask:来电。这可以在您的应用程序的情况下保护这些任务 突然被移到后台。
然后在过期处理程序中可以将上传标记为未完成,并在applicationDidBecomeActive:中返回。
【讨论】:
好吧,在我看来,applicationDidBecomeActive: 方法不允许您处理一些特殊的事情,例如网络访问、定位服务、蓝牙功能等。但我的能力不足以证明这一点......
【讨论】: