【问题标题】:Should I use beginBackgroundTaskWithExpirationHandler: for all HTTP connections?我应该对所有 HTTP 连接使用 beginBackgroundTaskWithExpirationHandler: 吗?
【发布时间】:2011-10-22 12:29:42
【问题描述】:

我正在开发一个能够将数据上传到远程端点的 iOS 应用程序。因为良好的用户体验需要能够在应用上传时离开应用去执行其他任务,所以我是否应该使用beginBackgroundTaskWithExpirationHandler: API 启动所有我的上传?

【问题讨论】:

    标签: ios multitasking


    【解决方案1】:

    是的。这与the application design guide 中描述的设计模式之一一致:

    beginBackgroundTaskWithExpirationHandler:endBackgroundTask: 来电。这可以在您的应用程序的情况下保护这些任务 突然被移到后台。

    然后在过期处理程序中可以将上传标记为未完成,并在applicationDidBecomeActive:中返回。

    【讨论】:

      【解决方案2】:

      好吧,在我看来,applicationDidBecomeActive: 方法不允许您处理一些特殊的事情,例如网络访问、定位服务、蓝牙功能等。但我的能力不足以证明这一点......

      【讨论】:

        猜你喜欢
        • 2011-08-21
        • 1970-01-01
        • 2017-06-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-05
        相关资源
        最近更新 更多