Flutter / Dart: список устройств в локальной сети - PullRequest
0 голосов
/ 16 сентября 2018

Я бы хотел подключиться к компьютеру в локальной сети из приложения. Есть ли способ подключить все машины к локальной сети? Как пингует широковещательный адрес?

Ответы [ 2 ]

0 голосов
/ 19 июня 2019

Чтобы обнаружить вашу локальную сеть и просмотреть список подключенных компьютеров, принтеров и других сетевых устройств, используйте пакет ping_discover_network .

Получить локальный ip и обнаружить сетевые устройства:

import 'package:wifi/wifi.dart';
import 'package:ping_discover_network/ping_discover_network.dart';

final String ip = await Wifi.ip;
final String subnet = ip.substring(0, ip.lastIndexOf('.'));
final int port = 80;

final stream = NetworkAnalyzer.discover(subnet, port);
stream.listen((NetworkAddress addr) {
  if (addr.exists) {
    print('Found device: ${addr.ip}');
  }
});
0 голосов
/ 17 сентября 2018

Сейчас эта библиотека работает только на Android, но ...

https://pub.dartlang.org/packages/mdns

  1. Настройка MDNS для любой службы, которую вы используете.
  2. Откройте для себя услугу как таковую

    startMdnsDiscovery(String serviceType){
    
        Mdns mdns = new Mdns(discoveryCallbacks: discoveryCallbacks);
    
        mdns.startDiscovery(serviceType);
    
    }
    

Полный пример: здесь

Кроме того, что такое MDNS .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...