当前位置: 首页 > news >正文

在当系统未连接上wifi的时候,直接不显示wifi列表 ,这个判断导致?

wifiactivty.java的处理会在当系统未连接上wifi的时候,直接不显示wifi列表 ,这个判断导致?

这个问题主要出现在 updateWifiList 方法中,因为它在更新 Wi-Fi 列表时添加了一个条件判断:

在 updateWifiList 方法中,代码通过 NetworkUtils.isWifiConnected() 判断当前是否连接到 Wi-Fi。如果未连接到 Wi-Fi(即 NetworkUtils.isWifiConnected() 返回 false),则会执行以下逻辑:

  • 清空 wifiList(wifiList.clear())。
  • 调用 wifiAdapter.notifyDataSetChanged() 更新 UI,导致列表显示为空。

这种逻辑导致在未连接 Wi-Fi 的情况下,Wi-Fi 列表不会显示任何扫描到的 Wi-Fi 网络。这是一个缺陷,因为即使设备未连接到 Wi-Fi,用户也应该能够看到可用的 Wi-Fi 网络列表,以便选择并尝试连接。

private void updateWifiList() {// 移除 NetworkUtils.isWifiConnected() 判断,直接处理 wifiListif (wifiList == null || wifiList.isEmpty()) {if (BuildConfig.DEBUG) {Log.d(TAG, "Wi-Fi list is empty");}Toast.makeText(this, getString(R.string.no_wifi_found), Toast.LENGTH_SHORT).show();} else {for (ScanResult result : wifiList) {// 可选:保留调试用途的日志// if (BuildConfig.DEBUG) Log.d(TAG, "Wi-Fi SSID: " + result.SSID);}sortWifiList();}if (wifiAdapter != null) {wifiAdapter.notifyDataSetChanged();}if (wifiListView != null) {wifiListView.invalidateViews();if (!TextUtils.isEmpty(connectedSsid)) {wifiListView.smoothScrollToPosition(0);}if (BuildConfig.DEBUG) {Log.d(TAG, "Updated wifi list and notified adapter");}}}

http://www.dtcms.com/a/244766.html

相关文章:

  • 贪心选择 (Greedy Choice)
  • Vue2数组响应式问题:Object.defineProperty不能监听数组吗
  • 论文略读:RegMix: Data Mixture as Regression for Language Model Pre-training
  • 杉山将(Sugiyama Masa)《图解机器学习》
  • 2023蓝桥杯C/C++ B组国赛
  • swagger通过配置将enum自动添加到字段说明中
  • Neo4j批量数据导入完全指南:高效处理大规模数据
  • Java多线程实现之同步方法详解
  • 创客匠人助力家庭教育IP破局:从0到1打造创始人个人品牌全攻略
  • Windows11下搭建Black Magic Probe (BMP) 编译环境
  • ESP32-s3 的I2C可以同时接LCD显示屏、IP5356M吗
  • c++ std::invoke
  • Docker Compose完整教程
  • 【Chipyard】 conda 环境安装与使用
  • 黑马python(四)
  • 正则表达式:开启文本处理的魔法之门
  • Git不能更新以及提交代码,提示链接超时,本地凭证无问题
  • Binder
  • ONLYOFFICE 协作空间 企业版使用秘籍-1.如何使用外部存储
  • 达梦数据库部署veri数据对比工具
  • 3.3.2 纠错编码(海明校验码)
  • 板凳-------Mysql cookbook学习 (十--5)
  • 鸿蒙Next仓颉语言开发实战教程:订单列表
  • Spring Cloud与Alibaba微服务架构全解析
  • Android GreenDAO 通过 Key 查询数据库数据慢问题优化
  • 力扣hot100--反转链表
  • 多线程应用
  • 详细解释aruco::markdetection _detectInitialCandidates函数
  • Java八股文——Spring「MyBatis篇」
  • Linux开发工具之VsCode(Filezila、MobaXterm、Vim三合一)