개발/개발 자료

(Android) 접속된 Wifi IP가져오기

시원한물냉 2015. 6. 9. 16:05

public String getLocalIpAddress()
 {
  final String IP_NONE = "N/A";
  final String WIFI_DEVICE_PREFIX = "eth";
  
  String LocalIP = IP_NONE;
  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();
                 if (!inetAddress.isLoopbackAddress()) {
                  if( LocalIP.equals(IP_NONE) )
                     LocalIP = inetAddress.getHostAddress().toString();
                  else if( intf.getName().startsWith(WIFI_DEVICE_PREFIX) )
                     LocalIP = inetAddress.getHostAddress().toString();
                 }
             }
         }
     } catch (SocketException e) {
         Log.e(DEBUG_TAG, "getLocalIpAddress Exception:"+e.toString());
     }
     return LocalIP;
 }