В моем приложении я программно подключаюсь к точке доступа, у которой нет доступа к Интернету через WifiManager
и WifiConfiguration
.Позже мне нужно получить доступ к устройству, подключенному к нему, для чтения данных - но я не зашел так далеко.
После подключения к Wi-Fi я получаю свои настройки DHCP просто отлично, но если я пытаюсьПроверьте адрес шлюза, набрав:
$ adb shell
OnePlus6:/ $ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
^C
--- 192.168.1.1 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1015ms
Шлюз недоступен ...
Я подозреваю, что это связано с тем, что Android (9?) перенаправляет весь трафик вслучай «мертвого» Wi-Fi на мобильных данных - например, вы все еще можете просматривать Интернет очень хорошо.
Вы можете легко повторить проблему, как это:
- Подключение кТочка доступа без доступа к Интернету
- Проверьте, работает ли ваш интернет (например, перейдите на google.com)
- Подключите телефон через
adb
и отправьте пинг по адресу вашей точки доступа
Любые идеи о том, как форсировать трафик через Wi-Fi, даже если он "отключен"?
Редактировать: Вывод ip route show
:
OnePlus6:/ $ ip route show
10.16.52.64/29 dev rmnet_data0 proto kernel scope link src 10.16.52.67
192.168.1.0/24 dev wlan0 proto kernel scope link src 192.168.1.116