我的應用程序使用多播在期間發送信標以及加入多播組的主機的IP。在Android設備中,它返回127.0.0.1。我環顧四周,發現許多人建議更改主機文件。但是,在Android的情況下,在我的情況下是不可能的。我如何獲得的設備,而不是回送地址的真實IP ..InetAddress.getLocalHost()。getHostAddress()在Android中返回127.0.0.1
private void getLocalAddress()
{
try {
String localHost = InetAddress.getLocalHost().getHostAddress();
servers.add(localHost);
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
在我的手機上,除非Wi-Fi已激活且已連接到Wi-Fi網絡,否則它沒有IP地址。如果沒有本地地址,那麼'getLocalHost'返回你得到的回送地址。 – 2012-02-03 11:42:41
@JoachimPileborg試試我的答案。我希望這會解決你的問題。 – himanshu 2012-02-03 11:46:25