Вы можете проверить, покрываете ли вы что-то вроде этого:
public static boolean hasSignal() {
if (RadioInfo.getState() == RadioInfo.STATE_OFF || RadioInfo.getSignalLevel() == RadioInfo.LEVEL_NO_COVERAGE) {
System.out.println(" -- no signal");
return false;
} else {
return true;
}
}
Если вы используете устройство Wi-Fi, вам нужно проверить Wi-Fi отдельно (я думаю)
public static boolean hasWifi() {
if ( ( RadioInfo.getActiveWAFs() & RadioInfo.WAF_WLAN ) != 0 ) {
return (CoverageInfo.isCoverageSufficient(CoverageInfo.COVERAGE_DIRECT, RadioInfo.WAF_WLAN, true));
} else {
System.out.println(" -- no wifi");
return false;
}
}
Iиспользуйте их в моем приложении, и они, кажется, работают правильно.