Подтвердить что ты не робот

Проверьте медленное подключение к Интернету iOS

Я добавил классы Reachability, предоставляемые apple, и он отлично работает для проверки подключения к Интернету. MY приложение отображает сообщение, если интернет отключен.

Но если интернет очень медленный, он просто продолжает загружать........

Я использую wi-fi, и я сталкиваюсь с этой проблемой, когда есть только точка, видимая в панели уведомлений iPhone для сигнала Wi-Fi.

Итак, я хочу знать, как я могу проверить медленное подключение к Интернету.

4b9b3361

Ответ 1

Вы можете отправить запрос на свой сервер и дать ему около 5-10 КБ данных, которые вы ожидаете получить, а затем создать обратный вызов таймера, который запланирован на 20 секунд.

Если вы не получите ответ в течение 20 секунд, подумайте, что это медленное соединение.

Пример:

// make POST request to server, the POST request should have a callback method assigned
[self testSpeed];

// schedule a method to be called after 20 seconds
myTimer = [NSTimer scheduledTimerWithInterval:20.0 selector:@selector(stopSpeedTest) .... ];

// your POST request callback method
-(void)speedTestCallback
{
    [myTimer invalidate];
    myTimer = nil;

    [self alertGoodSpeed];
}

// your stopSpeedTest method to identify app didn't receive response within 20 seconds
-(void)stopSpeedTest
{
    [self alertTooSlow];
}

Я думаю, что H2CO3 пытался спросить:

"Сколько байтов в секунду вы считаете медленным?"

Вам нужно решить, как долго вы думаете, что пользователь готов ждать, пока ожидаемый объем данных не будет возвращен.

Если вы говорите пользователю, что вы загружаете 50 МБ данных, тогда да, вернуть их обратно через 20 секунд быстро.

Однако, если вы ожидаете только 5-10 КБ данных, и он занимает больше 10 секунд, не говоря уже о 20 секундах, то соединение происходит очень медленно.