android获取周围AP信息(上)

本文介绍如何在Android应用中实现WiFi扫描功能,包括所需权限配置、获取WiFiManager对象、启动WiFi扫描及获取扫描结果的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、增加权限:

  由于此应用需要获取手机的网络信息,wifi信息,因此需要在AndroidManifest.xml文件中添加相关权限,否则会报permission deny错误:

1  <uses-permission android:name="android.permission.INTERNET"/>
2  <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>    
3  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
4  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

 

2、获取WifiManager对象:

 

1 WifiManager wm = (WifiManager)getSystemService(WIFI_SERVICE);  //获取wifi服务

  注意:android的后台运行在很多service,它们在系统启动时被SystemServer开启,支持系统的正常工作,getSystemService是Android很重要的一个API,根据传入的NAME来取得对应的Object,然后转换成相应的服务对象,getSystemService是抽象类的Context一个方法。

3、启动扫描:

1 wm.startScan();  //启动扫描。

  注意:这个方法是立即返回的,应该是新启动一个线程进行AP的扫描,所以最好等一段时间(很短时间就可以了)再获取结果。

4、获取扫描结果:

 

复制代码
1 List<ScanResult> scanList = wManager.getScanResults();
2 for(ScanResult scanResult : scanList){
3   //对扫描结果的操作 
4   String mac = scanResult.BSSID; //获取AP的mac地址
5   String ssid = scanResult.SSID; //获取服务集标识(路由器名字)
6   int rssi = scanResult.level; //wifi信号强度,单位是dbm
7 }
复制代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值