У Android отсутствует соединение с обратным вызовом при подключении к Wi-Fi без доступа к Интернету и мобильным данным - PullRequest
0 голосов
/ 07 февраля 2019

У меня следующая проблема:

    private BroadcastReceiver connectivityBroadcastReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            if (!Objects.equals(intent.getAction(), CONNECTIVITY_CHANGE)) {
                Log.d(TAG, "connectivityBroadcastReceiver.onReceive() --> not the intent we are interested in");
                return;
            }

            // FIXME: If connecting to Wi-Fi without internet AND mobile network is enabled there is no CONNECTIVITY_CHANGE callback

            if (wiFiConnectionManager.isConnectedToTrackerHotSpot()) {
                Log.i(TAG, "connectivityBroadcastReceiver.onReceive(): CONNECTED --> handleConnectedToTracker()");
                handleConnectedToTracker();
            } else {
                // Make sure we only show 1 AlertDialog per CONNECT attempt (= button press)
                if (userAwaitsResponse) {
                    Log.d(TAG, "connectivityBroadcastReceiver.onReceive() --> fragment.updateUiFailedToConnect()");
                    fragment.updateUiFailedToConnect();
                    userAwaitsResponse = false;
                } else {
                    Log.d(TAG, "connectivityBroadcastReceiver.onReceive() --> SUPPRESSING UI update (since already done)");
                }
            }

        }
    };

Теперь ситуация выглядит следующим образом:

Предварительные условия:

  • Wi-Fiс подключением к Интернету
  • Мобильная сеть с подключением к Интернету

Шаги:

  1. Подключение к встроенному устройству -> Wi-Fi без internet
  2. Я получаю изменение подключения после отключения от Wi-Fi через Интернет, но я никогда не получаю другое изменение подключения для установленного подключения к встроенному устройству (поскольку у меня все еще естьдействительное подключение к интернету в мобильной сети?)

Если я отключу мобильную сеть, все будет нормально.

Кто-нибудь может помочь?

(Это связано с моимпредыдущий вопрос здесь: Как проверить соединение Wi-Fi (SSID) при одновременном подключении к MOBILE на Android )

...