У меня есть приложение для обмена сообщениями iOS с пользовательскими действиями по уведомлению (кнопки, которые отображаются, когда уведомление развернуто в iOS 10+). Некоторые действия должны инициировать вызов REST на мой сервер без запуска пользовательского интерфейса приложения (UNNotificationActionOptions.foreground
в настройках опущено). Естественно, вызов REST может завершиться неудачно, но у меня нет графического интерфейса пользователя, чтобы отразить это пользователю Каковы лучшие практики обработки ошибок в такой ситуации?
Варианты, которые я мог придумать:
- Показать локальное уведомление с подробным описанием ошибки.
- Повторить попытку с экспоненциальным откатом в фоновом режиме.
- Запишите ошибку и покажите предупреждение при следующем запуске приложения.
- В конце концов используйте
UNNotificationActionOptions.foreground
и покажите предупреждение.
Ничто из этого не кажется мне хорошим, поэтому я хотел спросить, пришел ли кто-нибудь с лучшим решением. Похоже, что это распространенная проблема в приложениях обмена сообщениями.