У меня возникли проблемы с использованием фоновой выборки на swift 2.0 согласно руководству ->https://www.raywenderlich.com/92428/background-modes-ios-swift-tutorial3. Я получаю эту ошибку: application: performFetchWithCompletionHandler: но обработчик завершения никогда не вызывался.IOS Firebase background fetch
В основном у меня есть функция, где я выполняю свои действия (вызывая данные на firebase), и я хочу, чтобы это выполнялось на фоне.
Вот мое приложение коды делегата
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
UIApplication.sharedApplication().setMinimumBackgroundFetchInterval(
UIApplicationBackgroundFetchIntervalMinimum)
}
func application(application: UIApplication, performFetchWithCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void) {
if let tabBarController = window?.rootViewController as? UITabBarController,
viewControllers = tabBarController.viewControllers! as [UIViewController]!
{
for viewController in viewControllers {
if let a1 = viewController as? HorariosViewController {
completionHandler(.NewData)
a1.interface()
}
}
}
}
вот как я получаю данные из firebase на интерфейсной функции:
func interface() {
self.numeroDasOrações = []
self.adhan = []
if let snapshots = snapshot.children.allObjects as? [FDataSnapshot] {
for snap in snapshots {
if let postDictionary = snap.value as? Dictionary<String, AnyObject> {
let key = snap.key
let hSalat = Horarios(key: key, dictionary: postDictionary)
let hAdhan = Horarios(key: key, dictionary: postDictionary)
self.numeroDasOrações.append(hSalat)
self.adhan.append(hAdhan)
}
}
}
})
}
ошибка Xcode:
Предупреждения: Применение делегата получил вызов to -application: выполнитьFetchWithCompletionHandler: но обработчик завершения никогда не вызывался.
Заранее спасибо.
Пожалуйста, покажите ваш код ... и точная ошибка/предупреждающее сообщение от XCode ... –
@ kishan94 я просто отредактировал мой вопрос , –
Я думаю, что вызов completeHandler должен быть завершенHandler (UIBackgroundFetchResult.NewData) – Jay