分享一个自己做的 Android 网络诊断工具 — RailNet Tester

cobola 2026-07-20 21:42 1

最近高铁通勤比较多,发现一个问题:明明信号满格,视频就是卡。用 speedtest 测一下,告诉你"网速正常",然后继续卡。

现有的网络工具基本都是一次性测速,测一个点、给一个数字。但移动场景下网络是连续变化的——隧道里、过站时、山区,每个时刻都不一样。单点测速根本
反映不了真实情况。

于是周末写了这个:RailNet Tester 。

核心思路:连续采集 + GPS 同步

不是测一个点,而是每 1.5 秒自动打一个点,把延迟、丢包、GPS 速度、经纬度全部记录下来。跑完一段行程,生成一张双曲线图(延迟 + 速度),一眼就能看出哪里出了问题。

几个我觉得比较实用的点:

1. TCP 真实连通测试 — 不是 ICMP ping ,是真实 TCP 连接。目标不通就报不通,不画假曲线糊弄你。
2. 真实网络连通性判断 — 之前用单一目标 ping 判断是否有网,有些运营商会限制特定 IP ,导致明明有网却显示"断开"。现在改用 Android 系统的 NET_CAPABILITY_VALIDATED 能力判断,系统自身会验证网络是否真正连通互联网,不再依赖单个 IP 的 ping 结果。
3. 设备信息实时显示 — 当前手机型号、运营商、5G/4G/WiFi 、信号强度( dBm )直接展示在采集卡上。
4. 一键生成分享图 — 行程结束自动生成 1080×1920 的长图,可以直接发给运营商投诉或者发朋友圈。

隐私方面: 不需要注册账号,没有任何追踪 SDK ,所有数据只在本地。

技术栈:Kotlin + Jetpack Compose + MVVM + Coroutines ,target API 35 。

Google Play 已上架: https://play.google.com/store/apps/details?id=com.xg.railnettester

免费,无广告。欢迎试用,有任何问题或建议直接回复。
最新回复 (0)
    没有回复
* 帖子来源V2EX
返回