Android 通用获取Ip的方法   编辑文档    学分 +2 大家好,我们这一节讲一下,Android获取Ip的一些方法,在我们开发中,有判断手机是否联网,或者想获得当前手机的Ip地址,当然WIFI连接的和  我们3G卡的Ip地址当然是不一样的.  首先我尝试了如下方法:  view plaincopy to clipboardprint?  WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);  WifiInfo wifiInfo = wifiManager.getConnectionInfo();  int ipAddress = wifiInfo.getIpAddress();  WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);  WifiInfo wifiInfo = wifiManager.getConnectionInfo();  int ipAddress = wifiInfo.getIpAddress();  但是获得的居然是一个整数,我尝试了用些数学方法都没有成功!,所以这种方法不可取!  最后查了一些资料,发现如下方法是比较通用的,我尝试了WIFI和G3卡,都获取了争取的Ip地址:代码如下:  view plaincopy to clipboardprint?  public String getLocalIpAddress() {  try {  for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {  NetworkInterface intf = en.nextElement();  for (Enumeration enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {  InetAddress inetAddress = enumIpAddr.nextElement();  if (!inetAddress.isLoopbackAddress()) {  return inetAddress.getHostAddress().toString();  }  }  }  } catch (SocketException ex) {  Log.e(LOG_TAG, ex.toString());  }  return null;  }  public String getLocalIpAddress() {  try {  for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {  NetworkInterface intf = en.nextElement();  for (Enumeration enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {  InetAddress inetAddress = enumIpAddr.nextElement();  if (!inetAddress.isLoopbackAddress()) {return inetAddress.getHostAddress().toString();  }  }  }  } catch (SocketException ex) {  Log.e(LOG_TAG, ex.toString());  }  return null;  }  当我的手机处于飞行状态是,获得Ip地址为空,刚好符合要求!!!  希望对大家有所帮助!谢谢~

更多相关文章

  1. Android 获取手机号
  2. Android更新UI的方法
  3. Eclipse中编译Android工程时出现的问题解决方法。
  4. Android studio获取证书指纹 (SHA1)的方法
  5. 手机app图标显示为机器人或者不显示的解决办法
  6. Android 解析XML文件方法
  7. Android 的实现TextView中文字链接的4种方法
  8. [Android] 切换语言后避免Activity重启方法

随机推荐

  1. Android(安卓)Kernel Porting 的简单总结
  2. 往Android(安卓)Studio中import工程出错
  3. android listview 自定义分割线总结
  4. Android上的ART虚拟机
  5. Android(安卓)Volley框架使用详解
  6. Android(安卓)adb shell刷机命令实战
  7. Android利用NotificationListenerService
  8. Android禁止横屏竖屏切换
  9. Android事件分发机制完全解析,带你从源码
  10. Android(安卓)4.0 Launcher2源码分析——