Android开发实现在Wifi下获取本地IP地址的方法

 更新时间:2017年09月13日 10:06:46   作者:pku_android  
这篇文章主要介绍了Android开发实现在Wifi下获取本地IP地址的方法,涉及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相关内容感兴趣的读者可查看本站专题:《Android硬件相关操作与应用总结》、《Android资源操作技巧汇总》、《Android视图View技巧总结》、《Android开发入门与进阶教程》及《Android控件用法总结

希望本文所述对大家Android程序设计有所帮助。

相关文章

  • Android工程师面试题大全

    Android工程师面试题大全

    这篇文章主要为大家分享了Android工程师面试题,内容很丰富,结合网上各位的大神秒下的面试题做个总结,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • android开发教程之wifi开发示例

    android开发教程之wifi开发示例

    这篇文章主要介绍了android开发教程之wifi开发示例,需要的朋友可以参考下
    2014-03-03
  • 浅谈Android硬件加速原理与实现简介

    浅谈Android硬件加速原理与实现简介

    这篇文章主要介绍了浅谈Android硬件加速原理与实现简介,本文尝试从底层硬件原理,一直到上层代码实现,对硬件加速技术进行简单介绍,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • 基于android实现五子棋开发

    基于android实现五子棋开发

    这篇文章主要为大家详细介绍了基于android实现五子棋开发,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • android下拉刷新ListView的介绍和实现代码

    android下拉刷新ListView的介绍和实现代码

    在当下,列表组件不带下拉刷新的都不好意思叫列表。第一次完成列表的下拉刷新功能的时候,直接在Activity中实现,虽然功能上是实现了,总体上感觉很乱。所以第二次用到的时候,就想着封装成一个组件,实现和Activity的解耦。
    2013-04-04
  • 详解Retrofit2.0 公共参数(固定参数)

    详解Retrofit2.0 公共参数(固定参数)

    这篇文章主要介绍了Retrofit2.0 公共参数(固定参数),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • android中使用react-native设置应用启动页过程详解

    android中使用react-native设置应用启动页过程详解

    这篇文章主要介绍了android中使用react-native设置应用启动页过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Android Jetpack组件库LiveData源码深入探究

    Android Jetpack组件库LiveData源码深入探究

    LiveData是Jetpack组件的一部分,更多的时候是搭配ViewModel来使用,相对于Observable,LiveData的最大优势是其具有生命感知的,换句话说,LiveData可以保证只有在组件( Activity、Fragment、Service)处于活动生命周期状态的时候才会更新数据
    2022-09-09
  • Android自定义View实现字母导航栏

    Android自定义View实现字母导航栏

    通常手机通讯录都会有索引栏,这篇文章主要介绍了Android自定义View实现字母导航栏,现在分享给大家。
    2016-10-10
  • android 使用Xml文件定义Shape方式

    android 使用Xml文件定义Shape方式

    这篇文章主要介绍了android 使用Xml文件定义Shape方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03

最新评论