NetworkInterface.getNetworkInterfaces () генерирует исключение с нулевой строкой сообщения

Я взял старый код для восстановления, и один из методов, который работал на моем планшете и телефоне, больше не работает. Я пытаюсь использовать рутину, которую я взял здесь, чтобы получить свой IP-адрес.

Когда программа выполняет строку 4 (начиная с «for (Enumeration …», она сразу переходит в секцию исключения исключений. Исключение не имеет сообщения, а для строки ex.getMessage () возвращает значение null. Число исключений – 830034796568 ( десятичная дробь).

Вот код. Как уже упоминалось, это работало отлично год назад.

Спасибо за любую помощь!

public String getLocalIpAddress() { String address= null; try { for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); address = new String(inetAddress.getHostAddress().toString()); if (!inetAddress.isLoopbackAddress() && address.length() < 18) { return inetAddress.getHostAddress().toString(); } } } } catch (SocketException ex) { String msg = ex.getMessage(); //do nothing } return null; } 

Solutions Collecting From Web of "NetworkInterface.getNetworkInterfaces () генерирует исключение с нулевой строкой сообщения"