Я нахожусь на ранних стадиях разработки клиента кросс-платформенного сервера UDP.В моем случае клиенты отправляют широковещательную рассылку на телефон Android, к которому они подключены, через опцию мобильной точки доступа.
В настоящее время я проверяю это, имея сервер и клиент на одном устройстве.Однако я знаю только, как получить широковещательный адрес, благодаря удаленному приложению boxee.
Кто-нибудь знает способ сделать то же, что и приведенный ниже код, но получить широковещательный адрес мобильной сети?
Итак, вот код:
InetAddress getBroadcastAdd(Context context) throws IOException {
WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
DhcpInfo dhcp = wifi.getDhcpInfo();
int broadcast = (dhcp.ipAddress & dhcp.netmask) | ~dhcp.netmask;
byte[] quads = new byte[4];
for (int k = 0; k < 4; k++)
quads[k] = (byte) ((broadcast >> k * 8) & 0xFF);
return InetAddress.getByAddress(quads);
}
Для читателей с орлиными глазами, вы поймете, что мне на самом деле не нужен этот код для приложения, чтобы работать, как другие устройства получатшироковещательный адрес от Wi-Fi, но мне нужно сначала провести тестирование на этом устройстве.
Заранее спасибо!