Мое приложение использует многоадресную рассылку для отправки маяка в периоды вместе с сообщением протокола и ip узла, соединяющего группу многоадресной рассылки. В устройстве Android он возвращает 127.0.0.1. Я огляделся и обнаружил, что многие люди предлагали изменить файл хоста. Но в случае андроида это невозможно в моем контексте. Как получить реальный IP устройства, а не петлевой адрес ..InetAddress.getLocalHost() возвращает 127.0.0.1 в Android
private void getLocalAddress()
{
try {
String localHost = InetAddress.getLocalHost().getHostAddress();
servers.add(localHost);
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
На моем телефоне, если он не активирован Wi-Fi и не подключен к сети Wi-Fi, у него нет IP-адреса. Если локальный адрес отсутствует, 'getLocalHost' возвращает адрес loopback, который вы получаете. –
@JoachimPileborg попробуйте мой ответ. Я надеюсь, что это решит проблему ур. – himanshu