package com.lcg.util;
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
import android.util.Log;
public class IpTool {
/**
* 获取本机IP地址
*
* @return
*/
public static String getLocalIpAddress() {
String[] addr = new String[6];
int i=0;
try {
for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en
.hasMoreElements();) {
NetworkInterface intf = (NetworkInterface) en.nextElement();
for (Enumeration enumIpAddr = intf.getInetAddresses(); enumIpAddr
.hasMoreElements();) {
InetAddress inetAddress = (InetAddress) enumIpAddr
.nextElement();
addr\[i\]=inetAddress.getHostAddress().toString();
// System.out.println(“ip: “
// + inetAddress.getHostAddress().toString());
//
// //
// System.out.println(“Sitelocal:”
// + inetAddress.isSiteLocalAddress());
// System.out.println(“Anylocal:”
// + inetAddress.isAnyLocalAddress());
// System.out.println(“Linklocal:”+inetAddress.isLinkLocalAddress());
// System.out.println(“Loopbacklocal:”+inetAddress.isLoopbackAddress() );
// System.out.println(“Mutilocal:”+inetAddress.isMulticastAddress() );
if (!inetAddress.isLoopbackAddress() && inetAddress
instanceof Inet4Address) {
if(addr\[i-1\].endsWith("wlan0") || addr\[i-1\].endsWith("rmnet0"))
return inetAddress.getHostAddress().toString();
}
i++;
}
}
} catch (SocketException ex) {
Log.e("dataService", ex.toString());
}
return "";
}
}