Android獲得裝置的ip地址
整體擷取可以移動資料上網擷取IP也可以WiFi擷取方法
public static String getPhoneIp() { try { for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); for (Enumeration enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet4Address) { // if (!inetAddress.isLoopbackAddress() && inetAddress // instanceof Inet6Address) { return inetAddress.getHostAddress().toString(); } } } } catch (Exception e) { } return "127.0.0.1"; }
Wifi擷取IP方法
private String intToIp(int ip) {return (ip & 0xFF) + "." + ((ip >> 8) & 0xFF) + "."+ ((ip >> 16) & 0xFF) + "." + ((ip >> 24) & 0xFF);}private String getIp() {// 擷取wifi服務WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);// 判斷wifi是否開啟if (wifiManager.isWifiEnabled()) {//wifiManager.setWifiEnabled(true);WifiInfo wifiInfo = wifiManager.getConnectionInfo();int ipAddress = wifiInfo.getIpAddress();return intToIp(ipAddress);}return "127.0.0.1";}