2013-07-15 2 views
1

Я пишу приложение IOS, в котором мне нужно загрузить некоторые данные на сервер, когда мое приложение находится в фоновом режиме. Я думал об использовании локального уведомления, но для localNotification доступны только следующие параметры: fireDate, timeZone, repeatInterval, repeat Calendar Но мне нужно запустить локальное уведомление, когда подключение к Интернету активируется на устройстве. Могу ли я достичь этого, используя LocalNotification? Как я могу это сделать? Спасибо заранее.Как fireLocalNotification на основе доступности интернет-соединения в iPhone?

+0

Привет, RockandRoll, вы достигли этого или нет? Если да, поделитесь своим решением. –

ответ

0

Необходимо проверить доступность. Если это не то значение, которое вы желаете, то вам необходимо зарегистрироваться для уведомления, когда изменения достижимости. Когда это изменится на ReachableViaWiFi, вы должны удалить зарегистрированное уведомление и запустить свое действие.

Посмотрите на пример проекта достижимости в документах. Добавьте достижимость. [Mh] к вашему проекту.

+1

Здравствуйте, Kansen, Reachability дает мне статус соединения, но как запустить приложение или выполнить какой-либо код в фоновом режиме на основе состояния соединения. Я попробовал образец Reachability, и он отлично работает, но не получает, как выполнять код, когда приложение находится в фоновом режиме, когда статус Интернета получает изменения от NotReachable до ReachableviaWIFI или ReachableWViaWWAN? – RockandRoll

2

Использование reachabilityForInternetConnection и reachabilityForLocalWifi вы можете получить уведомление об этом. Но в реальном мире сценарий работает не так эффективно. Иногда это не так. И еще одно, если вы установите локальное уведомление в своем приложении для состояния фона, оно будет активным в течение короткого времени после того, как ваше приложение войдет в приостановленное состояние, где код не будет выполнен. Но вы можете установить таймер на пинг на Google или ваш сервер ИЛИ , проверив достижимость.