【发布时间】:2016-01-11 09:15:02
【问题描述】:
在 Xcode 7.0.1 中,“模拟背景”获取命令会导致 performFetchWithCompletionHandler 被触发两次。
这是 Xcode 调试错误吗,或者这可能发生在运行应用程序发布版本的设备上。
更新
现在我们有了 Xcode 7.1.1,但 performFetchWithCompletionHandler 仍然被调用了两次。由于我不确定这是否也“在野外”发生,所以如果我的 fetch 操作已经在运行,我会保持状态。
- (void)application:(UIApplication *)application performFetchWithCompletionHandler:(nonnull void (^)(UIBackgroundFetchResult))completionHandler {
if (self.performingFetch) {
return completionHandler(UIBackgroundFetchResultNoData);
}
self.performingFetch = YES;
...
self.performingFetch = NO;
}
【问题讨论】:
-
我正在经历同样的事情(不管在启动期间是否调用了
[application setMinimumBackgroundFetchInterval:])。 -
这方面有什么更新吗?我也有同样的经历。
-
这里也一样。 xcode 7 和 ios 9
-
另一个“我也是”。似乎是 iOS 9 的错误,因为 iOS 9 上的 Xcode 6.4 也会发生,iOS 8.4 上的 Xcode 7 不会发生。
-
我认为这是 iOS 9 的错误。我也可以确认它也发生在“野外”
标签: ios objective-c xcode swift background-fetch