//获取ip地址
public static String getLocalIPAddress(Context context) {NetworkInfo info = ((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();if (info != null && info.isConnected()) {if (info.getType() == ConnectivityManager.TYPE_MOBILE) {    //3G/4G网络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() && inetAddress instanceof Inet4Address) {return inetAddress.getHostAddress();}}}} catch (SocketException e) {Log.e(TAG,"获取3G/4G网络IP失败");}} else if (info.getType() == ConnectivityManager.TYPE_WIFI) {     // wifiWifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);WifiInfo wifiInfo = wifiManager.getConnectionInfo();String ipAddress = int2Sip(wifiInfo.getIpAddress());return ipAddress;} else if (info.getType() == ConnectivityManager.TYPE_ETHERNET) {    //有线ConnectivityManager mConnectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);Network network = null;if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {network = mConnectivityManager.getActiveNetwork();LinkProperties linkProperties = mConnectivityManager.getLinkProperties(network);for (LinkAddress linkAddress : linkProperties.getLinkAddresses()) {InetAddress address = linkAddress.getAddress();if (address instanceof Inet4Address) {return address.getHostAddress();}}}return "0.0.0.0";}} else {return "0.0.0.0";}return null;
}/*** 将ip的整数形式转换成ip形式* @param ip* @return*/
public static String int2Sip(int ip) {StringBuilder sb = new StringBuilder();sb.append(ip & 0xFF).append(".");sb.append((ip >> 8) & 0xFF).append(".");sb.append((ip >> 16) & 0xFF).append(".");sb.append((ip >> 24) & 0xFF);return sb.toString();
}

android获取有线、wifi、3G(4G)的IP相关推荐

  1. Android 判断用户2G/3G/4G移动数据网络

    2019独角兽企业重金招聘Python工程师标准>>> Android 判断用户2G/3G/4G移动数据网络 在做 Android App 的时候,为了给用户省流量,为了不激起用户的 ...

  2. android 获取连接WiFi的名称

    今天,简单讲讲如何获取连接的WiFi的名称. 首先AndroidMainfest.xml文件中添加权限: <uses-permission android:name="android. ...

  3. android获取wifi mac地址吗,Android获取当前WiFi的MAC地址-适配所有版本

    ** Android获取当前WiFi的MAC地址 ** package com.dogness.platform.utils; import android.content.Context; impo ...

  4. android 获取wifi型号,android 获取连接WiFi的名称

    释放双眼,带上耳机,听听看~! 今天,简单讲讲如何获取连接的WiFi的名称. 首先AndroidMainfest.xml文件中添加权限: 然后直接获取WiFi名称 WifiManager wifiMg ...

  5. android socket gprs 与 wifi 网络切换,Android应用开发Android 获取手机Wifi地址和Gprs地址,反射修改Wifi地址...

    Android 获取手机Wifi地址和Gprs地址,反射修改Wifi地址. //查看Wifi地址publicString   getWifiIpAddress() { //获取wifi服务WifiMa ...

  6. 热点连接的设备android,Android获取实时连接热点的设备IP

    最近有很多网友向小编咨询这样的问题:通过读取/proc/net/arp文件可以得到连接当前热点的设备的IP,但是一旦设备断开后,该设备的IP还是存在该文件中,遇到这样的麻烦不知道该如何解决了. 就像系 ...

  7. android dhcp 服务器,android 获取当前手机的 DHCP 信息ip,server 等操作实例教程

    android 获取当前手机的 DHCP 信息ip,server 等操作实例教程WifiManager wifiManager = (WifiManager) getSystemService(Con ...

  8. Android获取有线和无线(wifi)的IP地址

    /*** 获取IP* * @param context* @return*/public static String getIP(Context context) {String ip = " ...

  9. android 获取wifi的ip地址吗,Android获取有线和无线(wifi)的IP地址

    /*** 获取IP * *@paramcontext *@return */ public staticString getIP(Context context) { String ip= " ...

最新文章

  1. xxe漏洞攻防 简介 xml 引用外部实体 构造恶意内容
  2. java中getClass().getResourceAsStream()与getClass().getClassLoader().getResourceAsStream()的区别
  3. linux系统安装柯美打印机,柯尼卡美能达复印机中标麒麟系统驱动安装
  4. Android之三大图片缓存原理、特性对比
  5. sql之stuff函数学习笔记
  6. oracle注释 kole_t2u,oracle4
  7. linux boa post方式失败,移植boa出现的错误及解决方法
  8. android局域网调试无法安装,真机调试出现:INSTALL_FAILED_USER_RESTRICTED 安装错误解决方案...
  9. qcom charger
  10. 如何用手机远程协助长辈?我找出了6个最佳方法!(免ROOT)
  11. 一步步教您搞定讯飞语音识别 | 寻找C站宝藏
  12. pixi 小游戏_使用 Pixi.js 开发微信小游戏
  13. 大话西游片尾曲-一生所爱(世界是巨大的枷锁,你不得不重复自己或是别人的生活)
  14. STM32常用的开发工具有哪些?
  15. python分析红楼梦中人物形象_《红楼梦》主要人物形象分析
  16. java实现文本纠错功能_调用百度API进行文本纠错
  17. 基于BES+DSP 的音频系统方案设计
  18. Anno六轴机械臂solidworks转urdf
  19. noip2003侦探推理详解
  20. Latex学术论文排版讲解

热门文章

  1. 微信公开课讲师李卿:小游戏开放 100 天
  2. 马化腾“闪退”华人首富;马云回应收购中天微;华为遭美刑事调查 | CSDN极客头条...
  3. 关于 Java 9 你所需要知道的一切
  4. java 查询sql_Java 中如何使用 SQL 查询文本
  5. 带你重新认识ZooKeeper!java数组合并去重
  6. Java开发入门与实战!java图形用户界面布局
  7. 用html做工资查询登陆页面,薪资筛选页面.html
  8. Linux-Can't create socket: Too many open files
  9. python long函数_python函数
  10. 查看数值类型python_python怎么看数据类型