Android开发如何实现在Wifi下获取本地IP地址

这篇文章主要介绍了Android开发如何实现在Wifi下获取本地IP地址,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

具体如下:

代码核心介绍:

WifiManager类提供了对设备Wifi功能的管理,包括Wifi开关的打开和关闭,IP地址获取等等,早期的Android版本甚至支持对于IP的设置。在这里仅介绍其简单的一个小应用——获取IP地址。

首先先添加Uses-PermissionCHANGE_WIFI_STATEWAKE_LOCKACCESS_WIFI_STATE。代码如下(AndroidManifest.xml):

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

JAVA代码:

private String getIp(){
  WifiManager wm=(WifiManager)getSystemService(Context.WIFI_SERVICE);
  //检查Wifi状态
  if(!wm.isWifiEnabled())
    wm.setWifiEnabled(true);
  WifiInfo wi=wm.getConnectionInfo();
  //获取32位整型IP地址
  int ipAdd=wi.getIpAddress();
  //把整型地址转换成“*.*.*.*”地址
  String ip=intToIp(ipAdd);
  return ip;
}
private String intToIp(int i) {
  return (i & 0xFF ) + "." +
  ((i >> 8 ) & 0xFF) + "." +
  ((i >> 16 ) & 0xFF) + "." +
  ( i >> 24 & 0xFF) ;
}

感谢你能够认真阅读完这篇文章,希望小编分享Android开发如何实现在Wifi下获取本地IP地址内容对大家有帮助,同时也希望大家多多支持亿速云,关注行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!