加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > C语言 > 正文

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

发布时间:2020-12-15 01:01:34 所属栏目:C语言 来源:网络整理
导读:其中定义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; p

其中定义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的方法

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读