Gan*_*ham 6 cocoa-touch objective-c ios ios7
好的,我正在查看SimpleBackgroundFetch示例项目,它在App Delegate中使用以下内容:
[[UIApplication sharedApplication] setMinimumBackgroundFetchInterval:someTimeInSeconds];
//^this code is in didFinishLaunchingWithOptions
-(void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{
//do something + call completionHandler depending on new data / no data / fail
}
Run Code Online (Sandbox Code Playgroud)
所以,基本上我假设,我在这里调用我的应用程序服务器,以获取一些数据.
但后来我看到了NSURLSession 文档,它有类似的方法
– downloadTaskWithURL:
Run Code Online (Sandbox Code Playgroud)
并说它如下:
此API提供了一组丰富的委托方法,用于支持身份验证,并使您的应用能够在您的应用未运行时执行后台下载,或者在iOS中,当您的应用暂停时执行后台下载.
那么这两个API之间的区别是什么?如果我想不时地从我的应用程序的服务器下载一些数据,我应该使用什么?
我只是不确定两者之间的区别,所以我只是觉得我应该在这里澄清我的怀疑.去StackOverflow!
Tri*_*ops 10
这些是完全不同的东西.
后台获取:系统会在某个时间启动您的应用程序(启发式),您的工作就是开始为用户下载新内容.
NSURLSession:NSURLConnection的替换,允许在应用程序暂停后继续下载.