В моем приложении пользователю необходимо сохранить некоторую информацию в моей базе данных.Цель c - Сохранить блок завершения при вводе приложения в фоновом режиме
[myUser saveInBackground:^(BOOL success){
if(success){
// Do smthing
}
else{
// Alert the user
}
}];
На данный момент он работает нормально, и когда что-то не так во время Произошло сохранить я в состоянии предупредить пользователя только если приложение остается открытым и активным.
Предположим, что запрос к моей базе данных длится около 10 секунд (например, плохая сеть), и пользователь решает покинуть приложение, мой блок завершения не запускается.
Как я могу предупредить пользователя о том, что сбой не удалось, когда он уже покинул приложение?
Благодаря
Ну, я думаю, что это именно то, что мне нужно. Только один вопрос, когда shoud я вызываю [application endBackgroundTask: bgTask]; ? Потому что, когда написано «// Сохранить ваши данные», вы имели в виду, что сохранение было синхронным? Потому что мой метод сохранения асинхронен, и тогда я должен вызвать endBackgroundTask, когда вызывается мой блок завершения или сразу после вызова метода сохранения? –
Вы должны вызвать [application endBackgroundTask: bgTask]; когда ваше сохранение будет завершено. Он уведомляет iOS о завершенной задаче. И это всего лишь пример выполнения задачи. Вы можете называть это синхронно или асинхронно. – Oleg
Хорошо. Но скажем, моя экономия длится 10 секунд, а затем все, что происходит после сохранения, также выполняется в backgroundtask? Как я могу сказать, что просто хочу сохранить выполнение в фоновом задании? –