Что делает опция «Агрессивная передача Wi-Fi на сотовую связь» в настройках разработчика?

29

В Android Lollipop 5.0 я заметил, что в «Параметрах разработчика» имеется флажок «Агрессивная передача обслуживания Wi-Fi на сотовую связь», который по умолчанию не отмечен. Кто-нибудь знает, что делает этот параметр и почему он отключен по умолчанию и скрыт в настройках разработчика?

ivanatpr
источник
Судя по названию опции, кажется, что выбор этой опции делает телефон более счастливым для использования сотовых данных при плохом сигнале WiFi
saloalv

Ответы:

26

Код для shouldSwitchNetwork()лучшего объясняет, что он делает. Он просто искусственно уменьшает WiFiI RSSI (индикация уровня принимаемого сигнала), чтобы побудить конечный автомат WiFi принять решение о переключении соединения с WiFi на сотовую сеть. Вокруг строки 3559 WifiStateMachine.java ( строка 4262 для Android 6.0.1_r10):

int rssi = mWifiInfo.getRssi() - 6 * mAggressiveHandover
        + (homeNetworkBoost ? WifiConfiguration.HOME_NETWORK_RSSI_BOOST : 0);

Переменная mAggressiveHandoverявляется , intчто значение 0 или 1 в настройках разработчика :

private void writeWifiAggressiveHandoverOptions() {
    mWifiManager.enableAggressiveHandover(mWifiAggressiveHandover.isChecked() ? 1 : 0);
}

rssiПеременная продолжает влияния , как классифицируют соединение: isBadRSSI, isLowRSSIили isHighRSSI.

Что касается того, почему он скрыт под опциями разработчика, я бы сказал, что это потому, что он кажется немного хакерским с кажущимся произвольным скаляром (6), который придумал какой-то dev, чтобы подтолкнуть поведение в желаемом направлении. Google, вероятно, не уверен относительно последствий этого параметра и оптимального способа настройки rssi. Если я ошибаюсь и это как-то значимо, я рад это признать и объяснить здесь, почему.

Отключение этого параметра НЕ отключает передачу обслуживания сотовой связи вообще . Соединение WiFi все еще получает оценку и отключается, если оценка слишком низкая. Но, эй, начальная оценка также установлена ​​произвольно.

chappjc
источник
5

Передача Wi-Fi на сотовую связь - это функция в телефонах, которая автоматически переключается на сотовую передачу данных, когда у вас нет надежного соединения WiFi. Вы хотели бы включить это по нескольким причинам:

  • Это сэкономит заряд батареи - если ваш телефон не переключается на сотовые данные, когда он не может подключиться к Wi-Fi-соединению, ваш телефон продолжит поиск WiFi, таким образом, используя батарею.
  • Вам не нужно будет отключать Wi-Fi, когда вы выходите из дома или когда у вас нет подключения, чтобы использовать данные.
Марио
источник
1
Таким образом, отключение функции «Агрессивная передача Wi-Fi в сотовую связь» полностью отключает эту функцию? или это просто изменяет поведение, чтобы иметь более высокий предел для того, когда переключаться с Wi-Fi на сотовую связь?
ivanatpr
-2

Нет, она НЕ полностью отключает эту функцию и не включает ее при включении; ее можно ТОЛЬКО включить / выключить в настройках → Wi-Fi → Расширенное меню Wi-Fi (значок с тремя точками в правом верхнем углу). в углу) и затем установите флажок рядом с «Умным переключателем» (Verizon Samsung Galaxy Note 4 Android 5.1.1), в противном случае единственное , что вы честно делаете через меню разработчиков, - просто заставляете эту самую опцию работать, если / когда ваш телефон испытывает любой тип сети "сбой" , и он каким- то образом забывает изменить тип сети. Я полагаю, что вы могли бы подумать об этом как о грубом или резком напоминании системе об изменении ее интернет-соединения с Wi-Fi на сотовые данные и / или наоборот.

Райан Келли
источник
1
Спасибо за попытку помочь ОП, но об этом спросили 1 год назад, и ваш ответ трудно найти читателям. Можете ли вы отредактировать свой пост, чтобы правильно использовать маркеры и / или маркировку кода?
Аарон Гиллион,