Получил состояние NetworkInfo: ОТКЛЮЧЕНО / БЛОКИРОВАНО, даже если телефон подключен - PullRequest
0 голосов
/ 26 октября 2018

Я понял подключение к Интернету по приведенному ниже коду.Когда приложение находится на переднем плане, состояние соединения NetworkInfo равно CONNECTED, но приложение является фоновым или прервано, состояние соединения равно DISCONNECTED/BLOCKED, даже если телефон подключен 3G.

Я посмотрел другие вопросы by stackoverflow, но нет ответа на эту проблему.

public class InternetConnectionControl {

    private NetworkInfo networkInfo;

    private NetworkInfo getNetworkInfo() {

        if (networkInfo == null) {
            ConnectivityManager _cm = ServiceUtil.getConnectivityManager(MyApplication.getContext());
            networkInfo = _cm.getActiveNetworkInfo();
        }

        return networkInfo;
    }

    public void setNetworkInfo(NetworkInfo networkInfo) {
        this.networkInfo = networkInfo;
    }

    private boolean isConnectedToWifi() {
        NetworkInfo info = getNetworkInfo();
        return (info != null && info.isConnectedOrConnecting() && info.getType() == ConnectivityManager.TYPE_WIFI);
    }

    private boolean isConnectedToMobile() {
        NetworkInfo info = getNetworkInfo();
        return (info != null && info.isConnectedOrConnecting() && info.getType() == ConnectivityManager.TYPE_MOBILE);
    }

    public boolean isConnectedToInternet() {

        boolean isWifiConnected = isConnectedToWifi();
        boolean isMobileConnected = isConnectedToMobile();

        return isWifiConnected || isMobileConnected;

    }
}

1 Ответ

0 голосов
/ 26 октября 2018

у тебя аппарат самсунг?Samsung имеет режим энергосбережения, и вы должны разрешить следующие способы вашего приложения:

Шаг 1

  1. Введите батарею из настроек
  2. НажалПриложения без контроля
  3. Добавить приложение

Step2

  1. Ввод приложений из настроек
  2. НажмитеВаше приложение
  3. Нажмите Мобильные данные
  4. Включить Разрешить приложение при сохранении данных на
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...