当前位置: 首页 > 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");}}}

相关文章:

  • 贪心选择 (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数据对比工具
  • 一级a做受片免费网站/seo石家庄
  • 经营网站赚钱/ciliba磁力猫
  • 网站推广营销怎么做/百度数据研究中心官网
  • 网页制作工作网站/安卓aso
  • 广州手机网站建设/seo教程技术优化搜索引擎
  • 谷歌网站统计/查询网站