Как вызвать экран Wi-Fi с дополнительной аутентификацией в моем приложении? - PullRequest
2 голосов
/ 03 февраля 2012

Я работаю над приложением для iPad, которое требует частых подключений к общедоступному веб-серверу. У меня есть сеть Wi-Fi, для которой требуется аутентификация и время ожидания истекло после 30 минут входа в систему.

Я использую класс Reachability, но не могу получить информацию о сети, которую я хочу, в моем приложении. Класс Reachability учитывает всякий раз, когда пользователь подключается / отключается от сети Wi-Fi, но в случае истечения времени аутентификации класс Reachability дает неверные результаты.

Reachability *internetReach=[Reachability reachabilityWithHostName:@"www.google.com"];

if ([internetReach currentReachabilityStatus] == NotReachable) {
    [self alertMessage:@"Wi-Fi connection not available"];
}

Я не получаю ожидаемое предупреждение, когда время ожидания Wi-Fi истекло. Что мне нужно, так это чтобы мое приложение распознало, что время ожидания Wi-Fi истекло, и оно должно автоматически открыть для пользователя лист аутентификации Wi-Fi Safari (как это происходит в App Store, YouTube и т. Д.)

1 Ответ

1 голос
/ 07 февраля 2012

Я думаю, вам не хватает кода.Сначала вы должны запустить уведомитель, а затем вам нужно сохранить ссылку Reachability, например, как свойство.Затем вам нужно реализовать метод уведомления.После изменения ваш код может выглядеть примерно так:

-(void)viewWillAppear:(BOOL)animated {
    Reachability *internetReach=[Reachability reachabilityWithHostName:@"www.google.com"];
    [internetReach startNotifier];

    self.internetReachable = internetReach;
}

-(void)checkNetworkStatus:(NSNotification*)notice;
{
    NetworkStatus internetStatus = [internetReachable currentReachabilityStatus];

    if ([internetReachable currentReachabilityStatus] == NotReachable) {
        [self alertMessage:@"Wi-Fi connection not available"];
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...