1.使用WIFI
首先设置用户权限
复制代码代码如下:
<uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission> <uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>
1:获取wifi地址
public class NetWorkUtils { /** * 检查网络是否可用 * * @param paramContext * @return */ public static boolean checkEnable(Context paramContext) { boolean i = false; NetworkInfo localNetworkInfo = ((ConnectivityManager) paramContext .getSystemService("connectivity")).getActiveNetworkInfo(); if ((localNetworkInfo != null) && (localNetworkInfo.isAvailable())) return true; return false; } /** * 将ip的整数形式转换成ip形式 * * @param ipInt * @return */ public static String int2ip(int ipInt) { StringBuilder sb = new StringBuilder(); sb.append(ipInt & 0xFF).append("."); sb.append((ipInt >> 8) & 0xFF).append("."); sb.append((ipInt >> 16) & 0xFF).append("."); sb.append((ipInt >> 24) & 0xFF); return sb.toString(); } /** * 获取当前ip地址 * * @param context * @return */ public static String getLocalIpAddress(Context context) { try { WifiManager wifiManager = (WifiManager) context .getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); int i = wifiInfo.getIpAddress(); return int2ip(i); } catch (Exception ex) { return " 获取IP出错鸟!!!!请保证是WIFI,或者请重新打开网络! " + ex.getMessage(); } // return null; } }
//GPRS连接下的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()) { return inetAddress.getHostAddress().toString(); } } } } catch (SocketException ex) { Log.e("WifiPreference IpAddress", ex.toString()); } return null; }