我已经添加了苹果提供的可达性类,它可以很好地检查互联网连接。如果互联网中断,我的应用程序会显示消息。
但如果网速很慢,它就会继续加载......
我正在使用 wi-fi,当 iPhone 的 wifi 信号通知栏中只有一个点可见时,我遇到了这个问题。
所以我想知道如何检查网速是否慢。
最佳答案
您可以向您的服务器发送一个请求,假设您希望返回大约 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 秒了,那么连接就会非常慢。
关于ios - 检查慢速互联网连接 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13909295/