Как проверить локальное соединение Wi-Fi - PullRequest
2 голосов
/ 23 апреля 2010

Я пишу приложение, которое подключается к статическому IP-адресу в локальной сети. Как я могу проверить, есть ли у меня подключение к локальной сети? Я хочу подключиться к http://192.168.2.5, и я попытался использовать класс Rechability, но он возвращает FALSE, хотя устройство определенно подключено (когда я не делаю проверку, приложение работает нормально, поэтому есть соединение):

Reachability *r = [Reachability reachabilityWithHostName:@"http://192.168.2.5"];
NetworkStatus internetStatus = [r currentReachabilityStatus];

Как это решить?

Thomas

Ответы [ 2 ]

1 голос
/ 24 апреля 2010

У меня сложилось впечатление, что вы не следовали правилам использования, описанным в ReadMe и образце кода. Вы, кажется, проверяете статус синхронно и сразу, что не работает. Посмотрите на метод applicationDidFinishLaunching в ReachabilityAppDelegate.m, который показывает, как ждать ответа (через reachabilityChanged), прежде чем проверять состояние. Кроме того, вам может понадобиться вызвать startNotifer, чтобы это работало.

0 голосов
/ 29 ноября 2010

Проблема, которую я вижу с этим: "http://" не является именем хоста;)

Вы должны проверять свой ip только без части http!

(я знаю, что это старый,но реального ответа не было, и вы можете найти его через поиск)

...