Android获取热点主机ip和连接热点手机ip的代码

其中定义WIFI AP的几个状态

public static final int WIFI_AP_STATE_DISABLING = 10;
public static final int WIFI_AP_STATE_DISABLED = 11;
public static final int WIFI_AP_STATE_ENABLING = 12;
public static final int WIFI_AP_STATE_ENABLED = 13;
public static final int WIFI_AP_STATE_FAILED = 14;  

对应于WifiMangaer.java中对这几个状态的定义。

获取WIFI热点的状态:

public int getWifiApState(Context mContext) {
  WifiManager wifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
    try {
      Method method = wifiManager.getClass().getMethod("getWifiApState");
      int i = (Integer) method.invoke(wifiManager);
      Log.i(TAG,"wifi state: " + i);
      return i;
    } catch (Exception e) {
      Log.e(TAG,"Cannot get WiFi AP state" + e);
      return WIFI_AP_STATE_FAILED;
    }
  }  

判断Wifi热点是否可用:

private ArrayList<String> getConnectedHotIP() {
  ArrayList<String> connectedIP = new ArrayList<String>();
  try {
    BufferedReader br = new BufferedReader(new FileReader(
        "/proc/net/arp"));
    String line;
    while ((line = br.readLine()) != null) {
      String[] splitted = line.split(" +");
      if (splitted != null && splitted.length >= 4) {
        String ip = splitted[0];
        connectedIP.add(ip);
      }
    }
  } catch (Exception e) {
    e.printStackTrace();
  }
  return connectedIP;
}
//输出链接到当前设备的IP地址
public void printHotIp() { 

  ArrayList<String> connectedIP = getConnectedHotIP();
  StringBuilder resultList = new StringBuilder();
  for (String ip : connectedIP) {
    resultList.append(ip);
    resultList.append("\n");
  }
  System.out.print(resultList);
  Log.d(TAG,"---->>heww resultList="+resultList);
} 

当然在应用中要添加访问WIFI设备的权限:

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

获取热点主机ip地址的代码:

WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
      DhcpInfo info=wifiManager.getDhcpInfo();
      System.out.println(info.serverAddress);

总结

以上所述是小编给大家介绍的Android获取热点主机ip和连接热点手机ip的方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

您可能感兴趣的文章:

  • Android 得到连接热点的ip的方法
  • Android获取实时连接热点的设备IP
(0)

相关推荐

  • Android 得到连接热点的ip的方法

    下面给大家介绍Android 得到连接热点的ip的方法 ,具体代码如下所示: WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); if (!wifiManager.isWifiEnabled()) { System.out.println("================="); wifiManager.setWifiEnabled(true); } WifiInfo

  • Android获取实时连接热点的设备IP

    最近有很多网友向小编咨询这样的问题:通过读取/proc/net/arp文件可以得到连接当前热点的设备的IP,但是一旦设备断开后,该设备的IP还是存在该文件中,遇到这样的麻烦不知道该如何解决了. 就像系统设置里面的 便携式热点管理一样的方便 的方式 可以实时的监控热点的连接设备的变化 下面小编给大家分享一段实例代码,希望可以帮助到大家,具体代码如下所示: private ArrayList getConnectedIP() { ArrayList connectedIP = new ArrayLi

  • Android获取热点主机ip和连接热点手机ip的代码

    其中定义WIFI AP的几个状态 public static final int WIFI_AP_STATE_DISABLING = 10; public static final int WIFI_AP_STATE_DISABLED = 11; public static final int WIFI_AP_STATE_ENABLING = 12; public static final int WIFI_AP_STATE_ENABLED = 13; public static final i

  • Android 获取屏幕的多种宽高信息的示例代码

    本文主要介绍了Android 获取屏幕的多种宽高信息的示例代码,分享给大家,具体如下: 包含的宽高信息如下图所示: 在模拟器上获取到的数据: 08-26 07:19:32.712 7834-7834/com.czy.screeninfo E/MainActivity: getTotalScreenHeight 1920 08-26 07:19:33.505 7834-7834/com.czy.screeninfo E/MainActivity: getScreenWidth 1080 08-26

  • Java/Android 获取网络重定向文件的真实URL的示例代码

    前言: 今天在测试使用第三方提供的URL进行文件下载的时候,得到了一个被重定向的url.很不幸的是这个URL对于我来说没办法进行文件下载.这时候就需要获得重定向文件的真实URL. 问题分析 : 其实Java 使用HttpURLConnection下载的的时候,会自动下载重定向后的文件,但是我们无法获知目标文件的真实文件名,文件类型,用下面的方法可以得到真实的URL 解决方案 : 需要注意的是在Android 4.0之后网络请求不能在主线程执行 new Thread(new Runnable()

  • Android获取双卡双待手机的SIM卡信息示例代码

    前言 需要验证手机号的功能,但是国内的手机多是双卡双待的,无法获取到两个号码.在Android的官方文档是没有提供相应的Api的,因为标准的Andoird是没有双卡的,好像也只有国内才会搞双卡双待的神器吧. 以下记录一下做这个功能所学习到的东西. Android 获取本机手机号(适用于双卡双待手机) 直接上代码: import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import

  • Android获取设备屏幕宽高pix值的方法

    本篇文章主要介绍了Android获取设备屏幕宽高pix值的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 方法一: WindowManager wm = (WindowManager) this .getSystemService(Context.WINDOW_SERVICE); int width = wm.getDefaultDisplay().getWidth(); int height = wm.getDefaultDisplay().getHeight

  • Android获取当前已连接的wifi信号强度的方法

    本文实例讲述了Android获取当前已连接的wifi信号强度的方法,是Android程序开发中非常常见的重要技巧.分享给大家供大家参考之用.具体方法如下: 1.得到当前已连接的wifi信息 WifiManager wifi_service = (WifiManager)getSystemService(WIFI_SERVICE); WifiInfo wifiInfo = wifi_service.getConnectionInfo(); 其中wifiInfo有以下的方法: wifiinfo.ge

  • android编程实现设置、打开wifi热点共享供他人连接的方法

    本文实例讲述了android编程实现设置.打开wifi热点共享供他人连接的方法.分享给大家供大家参考,具体如下: 用过快牙的朋友应该知道它们在两天设备之间传输文件的时候使用的是wifi热点,然后另一台便连接这个热点再进行传输.快牙传输速度惊人应该跟它的这种机制有关系吧.不知道它的搜索机制是怎样的,但我想应该可以通过热点的名字来进行判断吧.下面我们就来探讨一下如何自动创建一个wifi热点吧 创建wifi热点首先需要手机支持,建议开发的哥们整个好点的手机,我们公司那些个山寨设备,几近有一半是不支持热

  • Android 获取IP地址的实现方法

    Android 获取IP地址 最近做项目,有一个需求是Android设备获取当前IP的功能,经过一番查询资料解决了,记录下实现方法. 1.使用WIFI 首先设置用户权限 <uses-permission Android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission> <uses-permission android:name="android.permission.CH

  • android 获取本机的IP地址和mac物理地址的实现方法

    获取本机IP地址 public String getLocalIpAddress() { WifiManager wifiManager = (WifiManager) getSystemService(android.content.Context.WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); int ipAddress = wifiInfo.getIpAddress(); try { return In

随机推荐