#ios #objective-c #push-notification #uilocalnotification
#iOS #objective-c #push-уведомление #uilocalnotification
Вопрос:
Я знаю, что iOS допускает только несколько фоновых режимов, так можно ли пинговать веб-сайт, когда приложение работает в фоновом режиме, а затем использовать локальное уведомление, чтобы предупредить пользователя о том, что сервер теперь недоступен?
Я могу пинговать сайт, но я не уверен в фоновых уведомлениях.
Ответ №1:
Я использую фоновую выборку с удаленным сервером, где я обновляю некоторую информацию для приложения или отправляю локальное уведомление, если сервер недоступен. Полезно использовать доступные типы частоты обновления для BGfetch и не устанавливать точный интервал времени, приложение будет адаптироваться к потребностям пользователей и проверять сервер через соответствующие промежутки времени, что экономит заряд батареи.
Некоторые полезные ресурсы: http://code.tutsplus.com/tutorials/ios-7-sdk-background-transfer-service—mobile-20595
https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplicationDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UIApplicationDelegate/application:performFetchWithCompletionHandler:
Ответ №2:
Хотя технически это возможно, это не очень хорошая идея. Это мобильное устройство, поэтому существует множество причин, по которым оно не сможет подключиться к серверу, а также имеет ограниченное время автономной работы и потенциально ограничивает объем сетевого трафика, который оно может использовать.
То, что вы описываете, гораздо лучше обрабатывается сервером с быстрым и надежным подключением к сети, который использует push-уведомления для оповещения пользователей о сбоях.
Комментарии:
1. Спасибо! Я не думал о проблемах, которые вы подняли здесь.