检查iOS的慢速互联网连接

时间:2012-12-17 06:25:39

标签: ios

我添加了apple提供的Reachability类,它可以正常检查互联网连接。如果互联网熄灭,我的应用程序将显示消息。

但如果互联网非常慢,那就继续加载.......

我正在使用wi-fi,当iPhone通知栏中只有一个点可以看到wifi信号时,我遇到了这个问题。

所以我想知道如何检查网络连接速度慢。

1 个答案:

答案 0 :(得分:14)

您可以向服务器发送请求,并且假设您希望返回大约5-10 KB的数据,然后创建一个计划为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 MB的数据,那么是的,在20秒内将它们全部恢复正是快速的。

但是,如果你只想要5-10 KB的数据并且花费的时间超过10秒,更不用说20秒,那么连接速度非常慢。