Определение того, был ли iPhone перемещен с Wi-Fi на 3G или наоборот - PullRequest
3 голосов
/ 13 сентября 2011

G'day Guys,

Я использовал API достижимости с обратными вызовами состояния достижимости, чтобы определить, подключено ли приложение через 3G или Wi-Fi.Это приложение, которое выступает в качестве голосового расширения для существующего аппаратного обеспечения, и поэтому мы используем API-интерфейсы VoIP для работы в фоновом режиме, приема вызовов и т. Д.

Существует ли определенный способ, кроме использования достижимостиобратные вызовы состояния, чтобы определить, можете ли вы получить доступ к конкретной конечной точке IP или нет?Я мог бы использовать ASIHTTPRequest, а затем проверить, не истекло ли время ожидания, но это может вызвать потенциальные проблемы для меня в долгосрочной перспективе.

Я не ищу программный ответ, но больше любые идеи других разработчиков о том, какуправлять роумингом между ними в фоновом режиме, если у вас есть постоянное соединение.В основном, если устройство переходит на 3G, мне нужно уничтожить сеанс на устройстве, а если оно переходит на Wifi, мне нужно восстановить сеанс.

Любые отзывы или советы приветствуются.

1 Ответ

0 голосов
/ 20 марта 2012

API Reachability будут предоставлять уведомления об изменении подключения к вашему приложению, чтобы вы могли знать, когда подключение изменилось с WWAN на Wi-Fi.Он не скажет вам, если вы, к сожалению, перешли с Edge на 3G или LTE.В API Reachability также есть методы для проверки достижимости для конкретного хоста.Таким образом, в вашем приложении вы можете прослушивать уведомления об изменении метода подключения, а затем, когда оно меняет достижимость теста для вашего целевого хоста, и в то же время принимать решение о том, перестраивать сеанс или оставить его без изменений.

...