Cloudflare 优选 IP 测速 · 安卓版。把 byJoey/yx-tools 的 Go 测速引擎装进手机:单 APK,装上就能用,不用装 Python、不用 Termux。
测速内核基于 XIU2/CloudflareSpeedTest,反代场景的 IP:端口 支持来自 byJoey/yx-tools。
┌─ Android App ──────────────────────────────┐
│ MainActivity(Kotlin,只有一个壳) │
│ └─ 系统 WebView(Chromium 内核) │
│ └─ http://127.0.0.1:{port}/ │
│ yx.aar(gomobile bind 编译 Go 引擎) │
│ ├─ yx-tools 测速内核 + 内嵌网页(原样) │
│ └─ androidlib:Start/Stop 薄封装 │
└────────────────────────────────────────────┘
- Go 引擎(测速内核 + 网页界面)零改动复用上游代码,经 gomobile 编译成
.aar嵌入 APK,在应用内起本地 HTTP 服务 - 界面就是 yx-tools 原生网页,WebView 加载,桌面版能做的它都能做
- 下载结果自动存进系统「下载」目录(Android 10+ 走 MediaStore,免权限)
- 界面里的外部链接自动跳系统浏览器
- 手机没有 crontab,定时任务按钮自动隐藏
- 测速数据(结果、配置、Token)都在应用私有目录,卸载即清除
同上游 yx-tools:测 Cloudflare 各数据中心的延迟和下载速度(IPv4 / IPv6)、按机场码筛全球 97 个地区、反代模式测 IP:端口(支持导入 FOFA 资产 CSV / 别人分享的结果)、一键上报到 cfnew 面板或 GitHub 仓库。网页界面实时进度,逐条出结果。
去 Releases 下 app-release.apk 安装。
- 仅支持 arm64 设备(2014 年之后的手机基本都是),Android 8.0+
- 首次安装如提示「未知来源应用」,允许一次即可
- 自带签名密钥随仓库发布,仅作打包用,无保密价值;要自己分发请换成你的密钥
打开 App 就是完整界面,左侧配参数,右侧看结果:
- 延迟测速线程建议 ≤100(默认 200 是给电脑的,手机会发热耗电)
- 下载测速走真实大文件下载,注意流量,尽量 Wi-Fi 下测
- 上报 cfnew / GitHub 的配置方法和上游一致
需要:Go 1.22+、JDK 17、Android SDK + NDK r19+、gomobile。
go install golang.org/x/mobile/cmd/gomobile@latest
go install golang.org/x/mobile/cmd/gobind@latestWindows 上一键构建(脚本会自动生成 android/local.properties):
build-apk.bat产物是仓库根目录的 yx-android.apk。手动等效命令:
# 1. Go 引擎 -> aar
gomobile bind -target=android/arm64 -androidapi 26 -o android/app/libs/yx.aar ./androidlib
# 2. 打 APK
cd android && gradle assembleReleaseCI 在每次 push 和打 tag 时自动构建,推 v* 标签即发布 Release。
上游源码(cmd/、internal/、ip.txt 等)vendor 在本仓库里,方便完整构建。同步上游更新:把 byJoey/yx-tools 对应文件覆盖进来,保留 androidlib/、android/ 和本 README 即可;go.mod 需保留 golang.org/x/mobile 依赖。
├── androidlib/ Go 移动端封装(Start/Stop/Version)
├── android/ 安卓壳工程(Kotlin + WebView)
├── cmd/ internal/ yx-tools 测速引擎(来自上游,未改动)
├── ip.txt ipv6.txt Cloudflare 官方 IP 段缓存
└── build-apk.bat 一键构建脚本
- byJoey/yx-tools — 本项目的直接上游,MIT
- XIU2/CloudflareSpeedTest — 测速内核,MIT