继续在后台IOS中上传过程

Ale*_*dro 6 dropbox ios

我想知道是否可以继续在后台上传文件.例如,当用户将iPad置于睡眠状态时,继续上传...

我在Dropbox论坛中也问过这个问题,因为我使用核心API上传到Dropbox.这就是答案:

"使用核心API,上传完全由您的应用程序控制.您可以请求操作系统在后台保持您的应用程序活动,在暂停您的应用程序之前最多允许10分钟.您可以看到更多信息这里:https: //developer.apple.com/library/ios/#documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html 如果您使用新的Sync API,这将由API自动完成."

我在这里发帖是因为我不明白他们的意思是'要求操作系统让你的应用程序在后台运行'.这是否意味着我必须向ios请求特定的代码,它与dropbox无关,或者它是一个特定的Dropbox功能?

jjv*_*360 24

您需要让操作系统保持应用程序运行,它与Dropbox无关...当您开始上传时,请执行以下操作:

UIBackgroundTaskIdentifier bgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
    [[UIApplication sharedApplication] endBackgroundTask:bgTask];
}];
Run Code Online (Sandbox Code Playgroud)

...... bgTask并存放在某个地方.然后,当您上传完成或失败时,请执行以下操作:

[[UIApplication sharedApplication] endBackgroundTask:bgTask];
Run Code Online (Sandbox Code Playgroud)

这将告诉操作系统保持您的应用程序运行,因为有后台任务正在运行...

  • 重要的是要提到:"您标记的每个任务将有大约10分钟(总计)来完成其操作,大部分时间用于大多数常见用途.时间结束后,应用程序将被暂停并像其他任何暂停的应用程序一样对待." (引用此链接:http://www.codeproject.com/Articles/124159/Hour-21-Building-Background-Aware-Applications) (3认同)