bertrandmartel / speed-test-lib

:cloud: JSpeedTest : speed test client library for Java/Android
MIT License
381 stars 119 forks source link

Test not starting when internet speed is below around 10 kbps #23

Closed jigneshkhatri closed 7 years ago

jigneshkhatri commented 7 years ago

I used your lib in my project, but when the internet speed of the device is below or around 10 kbps, than progress is not shown. How to detect internet speed which is below 10 kbps? Please help me out. Am totally stuck.

bertrandmartel commented 7 years ago

Do you have the issue with upload or download ?

If you use test tasks as following with 10kbps connection do you reproduce the issue ?

./gradlew downloadFile
./gradlew uploadFile
jigneshkhatri commented 7 years ago

I have issue in both upload as well as download test. When my internet speed goes beyond 10 kbps than only test starts otherwise nothing is done in the app. Is there any method to specify minimum internet speed at which to start the test? Also where can I find the list of servers from different locations for speed test? I am stuck in here and my project deadlines are near.

bertrandmartel commented 7 years ago

Do you have any log in onDownloadError or onUploadError ? With very low connection speed I get SOCKET_TIMEOUT because the default value for socket timeout is 10s so it takes more than 10s to read at most 65535 octet (in practice 1448 octet depending on server/connection)

So if you don't want to timeout for very low connection speed, you can increase the socket timeout value (default is 10s), for instance for a max timeout value of 50 seconds

speedTestSocket.setSocketTimeout(50000);