Port of SpeedTest.Net to Dart
Installation
Add the package to your dependencies:
dependencies:
speed_test_port: ^1.0.4
OR:
dependencies:
speed_test_port:
git: https://github.com/oiuldashov/speed_test_port.git
Finally, run dart pub get
to download the package.
Projects using this library should use the stable channel of Flutter
Example of usage
SpeedTest tester = SpeedTest();
//Getting closest servers
var settings = await tester.GetSettings();
var servers = settings.servers;
//Test latency for each server
for (var server in servers) {
server.Latency = await tester.TestServerLatency(server, 3);
}
//Getting best server
servers.sort((a, b) => a.Latency.compareTo(b.Latency));
var bestServer = servers.first;
//Test download speed in MB/s
var downloadSpeed = await tester.TestDownloadSpeed(
bestServer,
settings.download.ThreadsPerUrl == 0
? 2
: settings.download.ThreadsPerUrl,
3);
//Test upload speed in MB/s
var uploadSpeed = await tester.TestUploadSpeed(
bestServer,
settings.upload.ThreadsPerUrl == 0 ? 2 : settings.upload.ThreadsPerUrl,
3);