У меня есть прототип Android-приложения, которое слушает многоадресные пакеты для обнаружения клиентов, с которыми можно связаться. Настройка сокета аналогична таковой:
InetAddress group = InetAddress.getByName("228.1.2.3");
MulticastSocket s = new MulticastSocket(4000);
s.joinGroup(group);
Это работает очень хорошо, когда все устройства подключены через WiFi. Я хотел бы поддержать это с телефоном, действующим как переносная точка доступа. Однако, хотя все мои устройства, похоже, правильно подключаются к точке доступа, я больше не получаю многоадресные данные. Мне интересно, существуют ли ограничения, запрещающие этот тип связи в режиме "горячей точки", или если есть какая-либо дополнительная сетевая конфигурация, необходимая для включения этого? Я пробовал это на нескольких разных устройствах, работающих с Gingerbread и Froyo, без везения.