有的时候我们需要获得WIFI的IP地址获得手机网络的IP地址,这是一个工具类,专门解决这个问题,这里需要两个权限:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" >    </uses-permission>    <uses-permission android:name="android.permission.INTERNET" >    </uses-permission>

第一个权限是获得WIFI的IP地址需要使用的,第二个权限是获得移动网络的IP需要使用的,代码如下:

public class GetIPAddressUtil {    public static String getWifiIP(Context context) {        String ip = null;        WifiManager wifiManager = (WifiManager) context                .getSystemService(Context.WIFI_SERVICE);        if (wifiManager.isWifiEnabled()) {            WifiInfo wifiInfo = wifiManager.getConnectionInfo();            int i = wifiInfo.getIpAddress();            ip = (i & 0xFF) + "." + ((i >> 8) & 0xFF) + "." + ((i >> 16) & 0xFF)                    + "." + (i >> 24 & 0xFF);        }        return ip;    }    public static String getMobileIP() {        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("哎呀,出错了...", ex.toString());        }        return null;    }}

完整演示Demo下载地址https://github.com/lenve/getIPAddress

更多相关文章

  1. 设备管理器权限- Android
  2. Android第三方经典项目,框架,效果等的大集合(满足你开发中的所有问
  3. 正确获得android设备的IP地址
  4. 快速解决Android(安卓)10选取相册失败(Permission denied)
  5. Android(安卓)常见Action
  6. 使用 Annotation 改善 Android(安卓)代码
  7. Android(安卓)展示本地或网络pdf文件
  8. 禁止其他应用访问自己的组件
  9. Android开源项目总结

随机推荐

  1. android常用控件一二
  2. android 焦点控制及运用
  3. Android(安卓)文件夹介绍
  4. Android网络架构之———OkHttp+Volley+G
  5. android避免内存泄露
  6. Android(安卓)应用的欢迎界面实现代码
  7. 面试常问的问题解决
  8. Gradle依赖的统一管理
  9. Android系统的启动流程(转载)
  10. 我的Android心得(8)--Message & Looper & H