在不ping任何服务器的情况下,无法获得下载/上传速度 . 由于您的服务器不支持ping,您可以使用第三方pinging站点 .
使用JSpeedTest库,您可以轻松完成 . 您可以在此库中找到一些所需的功能 . 如
速度测试下载
速度测试上传
下载/上传进度监控
可配置主机名/端口/ uri(FTP的用户名和密码)
可配置的套接字超时和块大小
配置上传文件存储
摇篮:
compile 'fr.bmartel:jspeedtest:1.32.1'
示例代码:
SpeedTestSocket speedTestSocket = new SpeedTestSocket();
// add a listener to wait for speedtest completion and progress
speedTestSocket.addSpeedTestListener(new ISpeedTestListener() {
@Override
public void onCompletion(SpeedTestReport report) {
// called when download/upload is complete
System.out.println("[COMPLETED] rate in octet/s : " + report.getTransferRateOctet());
System.out.println("[COMPLETED] rate in bit/s : " + report.getTransferRateBit());
}
@Override
public void onError(SpeedTestError speedTestError, String errorMessage) {
// called when a download/upload error occur
}
@Override
public void onProgress(float percent, SpeedTestReport report) {
// called to notify download/upload progress
System.out.println("[PROGRESS] progress : " + percent + "%");
System.out.println("[PROGRESS] rate in octet/s : " + report.getTransferRateOctet());
System.out.println("[PROGRESS] rate in bit/s : " + report.getTransferRateBit());
}
});