我也遇到了同样的问题.我在广播接收器的帮助下解决了它并围绕它构建了我自己的逻辑.

广播接收器类,确保在清单中提供权限ACCESS_WIFI_STATE和CHANGE_WIFI_STATE.

public class WifiChecker extends BroadcastReceiver {

private OnWifiResultArrived onWifiResultArrived = null;

private static boolean CAN_CALL_AGAIN = true;

private WifiManager wifiManager;

/**

* @param context context of activity.

* Remember to provide permission

*

* {@code },* {@code }

*/

@SuppressLint("MissingPermission")

public WifiChecker(Context context) {

CAN_CALL_AGAIN = true;

wifiManager = (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE);

context.registerReceiver(this,new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));

wifiManager.startScan();

rerunAgain();

}

private void rerunAgain() {

new Handler().postDelayed(new Runnable() {

@SuppressLint("MissingPermission")

@Override

public void run() {

if (CAN_CALL_AGAIN)

wifiManager.startScan();

rerunAgain(); //rerun the broadcast again

}

},1000);

}

public void addListerForWifiCallback(OnWifiResultArrived onWifiResultArrived) {

this.onWifiResultArrived = onWifiResultArrived;

}

@SuppressLint("MissingPermission")

@Override

public void onReceive(Context context,Intent intent) {

updateUi(wifiManager.getScanResults());

}

private void updateUi(final List scanResults) {

try {

new Handler().postDelayed(new Runnable() {

@Override

public void run() {

try {

if (onWifiResultArrived != null)

onWifiResultArrived.isInWifiRange(scanResults);

} catch (Exception e) {

e.printStackTrace();

}

}

},1000);

} catch (Exception e) {

e.printStackTrace();

}

}

public void unregisterListner(Context context) {

this.onWifiResultArrived = null;

CAN_CALL_AGAIN = false;

}

public interface OnWifiResultArrived {

void isInWifiRange(List scanResults);

}

}

广播课的用户

实现广播接收器类接口,即OnWifiResultArrived

WifiChecker checker = new WifiChecker(this);

checker.addListerForWifiCallback(this);

@Override

public void isInWifiRange(List scanResults){

//get your BSSID here

scanResults.get(position).BSSID;

//write your logic for checking weather it is connected or not

}

要么

WifiChecker checker = new WifiChecker(this);

checker.addListerForWifiCallback(@Override

public void isInWifiRange(List scanResults){

//get your BSSID here

scanResults.get(position).BSSID;

//write your logic for checking weather it is connected or not

});

如何获取bssid_android – 如何获取所有连接网络的BSSID?相关推荐

  1. android计算汇率代码,android studio 开发实例 连接网络获取汇率

    配置文件 AndroidManifest.xml 如下 Version:1.0StartHTML:000000243 EndHTML:000019067 StartFragment:000007811 ...

  2. 企业网络推广时网站获取排名离不开企业网络推广文章内容的更新

    搜索引擎在抓取网站排名时,网站内容价值性的体现瞬间放大,与此同时,网站内容更新频率也是不容小觑的.对于企业网站运营优化期间,不同类型的企业网站可以选择不同的内容更新频率,那么怎样针对企业网站制定合理的 ...

  3. Python学习笔记:用Python获取数据(本地数据与网络数据)

    Python学习笔记:用Python获取数据(本地数据与网络数据) 一.用Python获取本地数据 读写文件(三种基本模式:r, w, a) 1.写文件 2.读文件

  4. IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题)

    IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) 参考文章: (1)IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) (2)https:// ...

  5. Qt linux获取cpu使用率、内存、网络收发速度、磁盘读写速度、磁盘剩余空间等

    Qt linux获取cpu使用率.内存.网络收发速度.磁盘读写速度.磁盘剩余空间等,实际上大部分都和qt无关的,用其他语言也可以获取. code: .h #ifndef RESOURCE_MINITO ...

  6. 整理下如何获取WANmac和WAN口连接状态、如何读取lan口的连接状态、协商速率及mac

    整理下如何获取WANmac和WAN口连接状态.如何读取lan口的连接状态.协商速率及mac 总体思路就是WAN读取连接状态waninfo_common 的EthernetState ,读取lan的连接 ...

  7. 通过电脑获取WIFI密码(只能连接过的WiFi)

    通过电脑获取WIFI密码(只能连接过的WiFi) 通过电脑获取WiFi密码步骤很简单 第一步:键盘点击 win + r ,调出运行窗口. 第二步:键盘输入 cmd 回车,打开电脑黑窗口界面. 第三步: ...

  8. Paging3、Room使用,1、从本地Room数据库加载 2、直接网络获取数据加载 3、网络访问数据到Room数据库再加载 4、封装使用

    目录 1.从本地Room数据库加载数据 viewmodel fragment中使用 页面 数据库相关 2.直接网络获取数据加载 3.网络访问数据到Room数据库再加载数据 自定义RemoteMedia ...

  9. Java使用siger开源包获取服务器硬件信息(CPU 内存 网络 io等)

    Java使用siger开源包获取服务器硬件信息(CPU 内存 网络 io等) 通过使用第三方开源jar包sigar.jar我们可以获得本地的信息 1.下载sigar.jar sigar官方主页 sig ...

最新文章

  1. pycharm中导出依赖包 在pycharm下边的Terminal打开命令行终端执行命令
  2. 李飞飞公布谷歌云TPU、AutoML、行业方案等多项进展,AI云计算成谷歌全新增长点...
  3. 企业项目开发--分布式缓存memcached(3)
  4. leetcode算法题--LRU缓存机制
  5. 使用T-SQL导入多个文件数据到SQL Server中一文的疑惑
  6. SQL基础【二、SQL语法】
  7. 德国人认真起来,自己都怕!
  8. CentOS 8安装logrotate切割日志
  9. LuaForUnity5:Lua的字符串
  10. Android - 硬件抽象层(HAL)
  11. linux小米随身wifi驱动下载,小米随身wifi驱动
  12. cc直播怎么显示服务器,CC直播像素杯四大服务器严阵以待 MC精彩赛事即刻开启...
  13. 张小丫第一次微信支付(讲解)
  14. Linux编译代码卡死,Ubuntu下编译卡死的问题
  15. C++ 基础入门 之 结构体/结构体定义和使用/结构体数组/结构体指针/ 结构体嵌套结构体/结构体做函数参数/结构体中 const 使用场景/结构体案例
  16. 编程模式之观察者模式
  17. MySQL索引、视图创建与管理操作实验
  18. 使用malloc函数分配空间
  19. 8.字符串转整数(String to Integer)
  20. 兔将十年大作《赤狐书生》特效解析:青蛙精篇

热门文章

  1. hadoop的官网下载和各版本下载方法
  2. 入门Nginx反向代理服务器
  3. OA系统选型:须有火眼金睛
  4. 排序算法的时间复杂度汇总
  5. mac java自带java环境_mac Java环境配置
  6. 素数判定质因数分解(数论)(Miller Rabin)(Pollard Rho)
  7. PhysX 3.3 基础
  8. 高德地图集成到android7.0上遇到的问题
  9. 五月天演唱会—一代人逝去的青春
  10. Qt+百度AI实现人脸识别之人脸检测