Я рекомендую использовать эту библиотеку https://github.com/potterhsu/Pinger
Установка 1. В корневом build.gradle:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
В целевом модуле build.gradle
dependencies {
compile 'com.github.potterhsu:Pinger:v1.1'
}
Использование 1. Пинг напрямую в синхронизации:
Pinger pinger = new Pinger();
pinger.ping("8.8.8.8", 3);
2.Пинг в асинхронизации, пока она не будет выполнена:
Pinger pinger = new Pinger();
pinger.setOnPingListener(new Pinger.OnPingListener() {
@Override
public void onPingSuccess() { ... }
@Override
public void onPingFailure() { ... }
@Override
public void onPingFinish() { ... }
});
pinger.pingUntilSucceeded("8.8.8.8", 5000);
3.Пинг в асинхронизации до сбоя:
Pinger pinger = new Pinger();
pinger.setOnPingListener(new Pinger.OnPingListener() {
@Override
public void onPingSuccess() { ... }
@Override
public void onPingFailure() { ... }
@Override
public void onPingFinish() { ... }
});
pinger.pingUntilFailed("8.8.8.8", 5000);