- подключаться к телефону через Wi-Fi
- поддерживать сотовую связь (LTE/5G) в качестве Интернета подключение
- не показывать «Подключено без Интернета» в настройках Android Wi-Fi
- не требовать VPN на телефоне
- становится сетью по умолчанию
- проверяется/помечается как «Нет Интернета»
- блокирует сотовый трафик, если не переопределено вручную
- Эти устройства обычно сначала требуется сопряжение по Bluetooth, затем для передачи данных с высокой пропускной способностью используется Wi-Fi.
- Сеть Wi-Fi часто отображается как обычный SSID (а не Wi-Fi Direct в пользовательском интерфейсе).
- При подключении:
телефон продолжает использовать Сотовые данные - приложения могут получить доступ к локальному устройству через Wi-Fi
- предупреждение «Подключение без Интернета» не отображается
Что я знаю на данный момент
В Android сети классифицируются с помощью NetworkCapabilities, в частности:
Код: Выделить всё
NET_CAPABILITY_INTERNETКод: Выделить всё
NET_CAPABILITY_NOT_INTERNETКод: Выделить всё
NET_CAPABILITY_LOCAL_NETWORK
Я понимаю, что:
- Приложения не могут напрямую пометить сеть Wi-Fi как LOCAL_NETWORK
- Только системные / OEM / привилегированные компоненты могут создавать сети с явными возможностями.
- Существует системная функция под названием локальная точка доступа, которая создает сеть Wi-Fi, явно предназначенную только для локальной сети.
- Эти устройства могут использовать:
- локальную точку доступа, созданную системой (а не приложением), ИЛИ
- сеть Wi-Fi, настроенную таким образом, что никогда не объявляет маршрут по умолчанию/DNS, поэтому Android считает ее только локальной
/>
- Bluetooth используется для:
- обнаружения
- сопряжения/установления доверия
- внеполосного обмена учетными данными и параметрами Wi-Fi
- Поэтому Android сохраняет:
- Wi-Fi → только локальный трафик
- Сотовый → интернет-трафик
- Как именно Android решает назначить NET_CAPABILITY_LOCAL_NETWORK сети Wi-Fi?
- Это основано исключительно на маршрутизации (без шлюза по умолчанию)?
- Ошибка проверки?
- Или только на уровне системы API?
- Почему эти устройства не выдают предупреждение пользовательского интерфейса «Подключено без Интернета», в то время как обычная точка доступа без Интернета обычно это делает?
- Включен ли внутренний Wi-Fi Direct, даже если пользовательский интерфейс показывает обычный SSID?
- Какую роль Bluetooth играет на уровне ОС (помимо простого пользовательского интерфейса)?
- Достижимо ли такое поведение с помощью сторонних приложений или оно ограничено системными/OEM-компонентами?
- Обходные пути с использованием VPN
- Ручная привязка сети для каждого приложения
- Общие объяснения того, что такое Wi-Fi Direct или Bluetooth
Подробнее здесь: https://stackoverflow.com/questions/798 ... g-cellular