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
投稿
猜你喜欢
Android编程自定义菜单实现方法详解
2022-08-25 18:16:08
整理总结Java多线程程序编写的要点
2022-02-19 16:17:23
Android编程基础之获取手机屏幕大小(DisplayMetrics应用)示例
2023-09-26 17:57:43
WPF实现背景灯光随鼠标闪动效果
2023-09-05 15:39:27
聊聊Spring——AOP详解(AOP概览)
2023-11-01 04:44:18
Unity实现汽车前后轮倒车轨迹计算
2022-12-18 17:49:47
Android GSYVideoPlayer视频播放器功能的实现
2022-01-12 23:57:08
SpringBoot设置编码UTF-8的两种方法
2022-05-04 00:09:08
java自定义ClassLoader加载指定的class文件操作
2022-03-16 16:19:07
Java编程用两个栈实现队列代码分享
2023-03-22 01:05:05
Java使用iTextPDF生成PDF文件的实现方法
2023-10-15 10:44:13
用C#的params关键字实现方法形参个数可变示例
2022-04-14 01:53:16
25个最好的免费Eclipse插件
2021-09-21 10:56:24
Mybatis执行流程、缓存原理及相关面试题汇总
2022-10-15 23:30:28
Android 广播大全 Intent Action 事件详解
2021-09-10 12:40:15
解决Springboot2.1.x配置Activiti7单独数据源问题
2022-07-28 02:24:04
ionic App 解决android端在真机上tab处于顶部的问题
2022-05-11 21:56:57
详解SpringBoot下文件上传与下载的实现
2021-08-15 15:44:13
java字符串比较获取字符串出现次数的示例
2022-03-22 16:05:39
C# 关于爬取网站数据遇到csrf-token的分析与解决
2023-07-25 06:25:39