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

作者:ChinaWallace 时间:2021-07-07 06:14:32 

其中定义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的方法 网站的支持!

来源:http://blog.csdn.net/chinawallace/article/details/50372205

标签:android,热点,ip
0
投稿

猜你喜欢

  • Java 多线程并发LockSupport

    2022-04-07 23:59:57
  • java 引用传递的三种类型小结

    2023-09-03 03:59:47
  • 详解Unity日志打印工具功能

    2022-03-27 09:34:19
  • Android实现加载广告图片和倒计时的开屏布局

    2023-04-29 13:54:45
  • Java日期操作方法工具类实例【包含日期比较大小,相加减,判断,验证,获取年份等】

    2023-11-25 12:14:40
  • Java中方法的使用、重载与递归的详细介绍

    2022-03-02 02:50:05
  • C#中C/S端实现WebService服务

    2023-10-16 06:01:43
  • Java Web开发环境配置详解

    2023-03-05 03:32:37
  • 论Java Web应用中调优线程池的重要性

    2023-06-13 04:56:27
  • 使用SpringBoot+EasyExcel+Vue实现excel表格的导入和导出详解

    2023-07-18 18:15:14
  • C#控件闪烁的解决方法

    2023-02-27 07:30:41
  • GraphQL入门总体创建教程

    2022-10-16 12:29:09
  • Java两种方式实现动态代理

    2022-10-15 22:12:23
  • 详解Spring 中 Bean 的生命周期

    2023-09-13 14:55:57
  • 设计模式系列之组合模式及其在JDK和MyBatis源码中的运用详解

    2022-12-27 12:56:57
  • 使用springboot整合RateLimiter限流过程

    2022-09-12 21:42:48
  • C#中方法的详细介绍

    2023-08-06 12:31:21
  • Windows系统中Java调用cmd命令及执行exe程序的方法

    2021-11-27 23:00:02
  • Android 高仿微信转账金钱输入框规则

    2022-03-06 19:54:20
  • Android如何使用GestureDetector进行手势检测详解

    2022-03-21 22:08:46
  • asp之家 软件编程 m.aspxhome.com