F
Flutter Friendly
@flutterfriendly1.0K подп.
902просмотров
88.4%от подписчиков
20 февраля 2026 г.
🎬 ВидеоScore: 992
⌛Привет! С вами Анна, Flutter Team Lead Friflex В мобильных приложениях считается хорошей практикой оповестить пользователя о проблемах с подключением к Интернету. И сегодня поговорим о том, как эффективно во Flutter-приложении отслеживать это подключение. Рассмотрим 3 инструмента, которые точно будут полезны. ◾️connectivity_plus У этого плагина всего две основные функци. 1️⃣ checkConnectivity() — позволяет вернуть список активных типов подключения на устройстве. И здесь очень важно: полученные типы не гарантируют реальный доступ в Интернет. Это скорее чисто аппаратная проверка, подключен ли девайс к Wi-Fi, мобильному Интернету и прочему. Для части устройств этот метод может быть полезен для определения VPN-подключения, что очень актуально сейчас. Но учтите, что на iOS и macOS тип vpn никогда не вернется, вместо него вернется просто other. Future<void> main() async { final connectivity = Connectivity(); final connectionsList = await connectivity.checkConnectivity(); print(connectionsList); } 2️⃣ А вот вторая —onConnectivityChanged — представляет собой поток обновлений списка активных подключений. Через него будет удобно в реальном времени следить за изменениями через подписку. ◾️internet_connection_checker Этот плагин уже проверит реальный доступ в Интернет. Сделать это можно, используя базовые настройки плагина, через экземпляр InternetConnectionChecker.instance. В этом объекте уже зашиты адреса по умолчанию, куда сервис будет пытаться достучаться. Future<void> main() async { final hasConnection = await InternetConnectionChecker.instance.hasConnection; print(hasConnection); } Здесь не забывайте про знаменитые белые списки. Если ваше приложение включено в них, то фактический доступ к серверу у него будет, а вот проверка покажет, что подключения нет. И тут на помощь может прийти кастомный «чекер». В нем вы можете задать необходимые адреса для проверки. Future<void> main() async { final customChecker = InternetConnectionChecker.createInstance( addresses: [AddressCheckOption(uri: Uri.parse('custom_resource'))], ); final hasConnection = await customChecker.hasConnection; print(hasConnection); } Кроме однократной проверки, как и в предыдущей библиотеке, можно подписаться на смену статуса через поток onStatusChange. ◾️network_info_plus Если вам мало простого индикатора: есть Интернет или нет, этот инструмент будет точно полезен. Он дает возможность получить более развернутые данные о Wi-Fi подключении на устройстве. Тут можно получить и название сети, и ip-адрес, и прочее-прочее. Future<void> main() async { final networkInfo = NetworkInfo(); print(networkInfo.getWifiName()); print(networkInfo.getWifiIP()); print(networkInfo.getWifiIPv6()); print(networkInfo.getWifiBroadcast()); print(networkInfo.getWifiBSSID()); } Делитесь своими лучшими практиками в комментариях⬇️
902
просмотров
2894
символов
Нет
эмодзи
Да
медиа

Другие посты @flutterfriendly

Все посты канала →
⌛Привет! С вами Анна, Flutter Team Lead Friflex В мобильных — @flutterfriendly | PostSniper