获得手机当前的ip地址

时间:2023-03-09 23:10:42
获得手机当前的ip地址
package com.kale.floating.net;

import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration; import com.kale.floating.MainFloatActivity; import android.content.Context;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.util.Log; /**
* @author:金凯
* @tips :用来获取手机拨号上网(包括CTWAP和CTNET)时由PDSN分配给手机终端的源IP地址
* @date :2014-1-17
*/
public class NetManager {
//得到ip地址
public String getPsdnIp() {
String message = new String("未查询到IP地址,请检测网络状态");
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();
//不加判断则会得到IPV6的地址,下面的判断是来得到IPV4的地址
if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet4Address) {
//if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet6Address)
message = new String(inetAddress.getHostAddress().toString());
}
}
}
}
catch (SocketException e) {
}
return message;
} }