WiFiAnalyzer:开源 Android Wi-Fi 信号分析应用
WiFiAnalyzer 是 VREMSoftwareDevelopment 维护的开源 Android 应用,用于识别周边接入点、绘制信道与信号强度曲线、评估信道质量并导出接入点信息。应用采用 Kotlin 开发、以 Gradle 构建,基于 GPLv3 许可证发布,不采集个人或设备信息,且不需要联网权限。官方明确说明它不是 Wi-Fi 密码破解或钓鱼工具。
社区作者 · zZz
它解决什么问题
WiFiAnalyzer 是该项目官方仓库中的 Android 应用,用于分析 Wi-Fi 信号。
主要功能
- 识别附近的接入点(Access Points)
- 绘制信道信号强度图
- 绘制接入点信号强度随时间变化的曲线
- 分析 Wi-Fi 网络并对信道进行评分
- HT/VHT 检测:40/80/160/320 MHz(需要硬件/软件支持)
- 支持 2.4 GHz、5 GHz 和 6 GHz 频段(需要硬件/软件支持)
- 接入点视图支持完整或紧凑两种呈现方式
- 估算到接入点的距离
- 导出接入点详情
- 提供深色、浅色和跟随系统主题
- 可暂停/恢复扫描
- 提供过滤器:Wi-Fi 频段、信号强度、安全性和 SSID
- 厂商/OUI 数据库查询
- 官方声明应用功能较多,无法在此全部列出
官方特别提示:WiFiAnalyzer 不是 Wi-Fi 密码破解或钓鱼工具。
文档与教程
- 完整使用说明见用户手册(User Manual)。
- How-to 部分包含:操作视频;如何找到最佳 5 GHz Wi-Fi 信道;理解 Wi-Fi 4/5/6/6E/7(802.11 n/ac/ax/be)以便为无线路由器/AP 升级做判断;为什么 Wi-Fi 效果差以及如何修复;Wi-Fi 信道列表;到接入点的距离是如何计算的。
- FAQ 部分包含:Android Wi-Fi 扫描节流;位置服务权限要求;在次要用户账户上使用 WiFiAnalyzer;信道图如何显示;如何使用 SSID 过滤器;iOS 上的 WiFiAnalyzer 等效工具。
反馈渠道
- Bug 报告通过仓库的 issue 提交,页面提供了提交 bug 的说明链接与 Discussions 讨论区。
许可证
- WiFiAnalyzer 采用 GNU General Public License v3.0(GPLv3)许可。
- GPLv3 许可要点:披露源代码、保留许可证与版权声明、相同许可证、说明变更。页面同时提供了 GPLv3 的通俗解释与完整许可证链接(配图 4 为 GPLv3 标识,配图 5 为 FOSSA 状态徽章)。
隐私政策
- WiFiAnalyzer 不收集任何个人/设备信息。
- 应用设计上尽可能少地申请权限,只申请完成分析所必需的权限。
- 项目完全开源,没有隐藏内容。
- 最值得注意的是,该应用不需要访问互联网,因此可以确认它不会向任何其他来源发送个人/设备信息,也不会从其他来源接收信息。
贡献与翻译
- 参与贡献可查看仓库中的 CONTRIBUTING.md。
- 官方感谢所有贡献者提交的补丁、缺陷修复、更新等。
- 如希望以资金方式支持项目,可通过 PayPal 捐赠(配图 6 为 PayPal 捐赠按钮)。
- 项目通过 Weblate 的免费 Libre 托管支持多语言翻译,用户可以修改不理想的翻译,也可以新增一门语言(配图 7 为翻译状态徽章)。
持续集成
- 项目使用 GitHub Actions 进行 CI/CD,每次 push 和 pull request 会自动执行:ktlint 代码风格检查、Lint 分析、带覆盖率的单元测试(上传到 Codecov)、APK 构建(debug)、在 Android 模拟器上运行仪器测试;报告与 APK 等产物可在工作流运行中下载。
配图说明:配图 1 为应用图标;配图 2 与配图 3 分别为深色主题和浅色主题的功能宣传图。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
一、准备环境
- 安装 Android Studio。
- 获取 WiFiAnalyzer 仓库代码(导入时选择仓库的根目录)。
二、在 Android Studio 中构建
- 打开 Android Studio。
- 在“Welcome to Android Studio”界面选择“Import project ...”。
- 选择 WiFiAnalyzer 仓库的根目录,点击“OK”。
- WiFiAnalyzer 会自动开始构建。
三、运行各类 Gradle 命令
- 检查 Kotlin 代码风格:
./gradlew ktlintCheck- 应用 Kotlin 代码风格:
./gradlew ktlintFormat- 运行 lint 分析:
./gradlew lintDebug生成报告:app/build/reports/lint-results.html
- 运行单元测试:
./gradlew testDebugUnitTest生成报告:app/build/reports/tests/testDebugUnitTest/index.html
- 运行带覆盖率的单元测试:
./gradlew jacocoTestCoverageVerification生成报告:app/build/reports/jacoco/jacocoTestReport/html/index.html
- 运行仪器测试:
./gradlew connectedDebugAndroidTest生成报告:app/build/reports/androidTests/connected/debug/index.html
四、持续集成说明 项目使用 GitHub Actions 进行 CI/CD。每次 push 和 pull request 会自动执行:ktlint 代码风格检查、Lint 分析、带覆盖率的单元测试(上传到 Codecov)、APK 构建(debug)、在 Android 模拟器上运行仪器测试。报告和 APK 等产物可在工作流运行中下载。
五、常见问题
- 扫描受限:参见 FAQ 中“Android Wi-Fi scanning throttling”(Android Wi-Fi 扫描节流)说明。
- 权限问题:参见 FAQ 中“Location Service Permission Requirements”(位置服务权限要求)。
- 次要用户账户使用:参见 FAQ 中“WiFiAnalyzer on secondary user accounts”。
- 信道图显示与 SSID 过滤器的用法:参见 FAQ 中“How does the channel graph display...”与“How to use SSID filter?”。
- 6 GHz、HT/VHT、40/80/160/320 MHz 等能力取决于设备的硬件/软件支持。
- iOS 平台无同名应用,可参考 FAQ 中提供的等效工具说明。

