android获取ip地址Android4.0

来源:互联网 发布:手机视频通话软件 编辑:程序博客网 时间:2024/06/05 19:19

正确能在android4.0后的系统上运行,获取到正确的IPv4,注意红色部分,如果没有则会获得是IPv6的IP

//获取本地IP
    public  String getLocalIpAddress() { 
           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() && !inetAddress.isLinkLocalAddress())
                                Log.e("IP", inetAddress.getHostAddress().toString());
                                return inetAddress.getHostAddress().toString(); 
                               } 
                          } 
                       } 
                   } catch (SocketException ex) { 
                       Log.e("WifiPreference IpAddress", ex.toString()); 
                   } 
          
          
                return null; 
   }

原创粉丝点击