域名舵手 dnspilot — 現況說明報告

產出日期:2026-09-07 ・ 版本 v0.2.0 (versionCode 9) ・ 最新 commit 232bc74

1. 一頁總覽

App 版本v0.2.0 release 簽章版
技術棧Kotlin + Jetpack Compose・minSdk 26 (Android 8.0)・targetSdk 34
單元測試17/17 通過
本機真機狀態待真機回饋(v0.1.2 縮小問題)
後端 serverdnspilot-server 已上線(36/36 測試)
Google OAuth程式完成,等 Cloud Console 憑證
APK 下載見下方「4. 安裝與下載」

2. 功能現況

功能狀態說明
VpnService 安全通道完成TUN 本機通道,所有 DNS 流量經 app 重導至指定 DNS server
userspace DNS forwarder完成 (v0.1.4)修復部分機種「DNS 不生效」:app 自轉發,失敗切備用 DNS + 5 分回試
白名單自我修復完成連不通 / 對外 IP 變動 → 自動以 token 向 add-ip 申報(伺服器抓來源 IP)
status-check 輪詢完成預設 60s、連續 3 次失敗才觸發(皆可在設定調整)
狀態頁 (StatusScreen v2)完成 (9/4)日誌 / 狀態 / 設定三分頁;fileCorrupt banner;啟動追蹤一鍵複製
Crash 防護完成 (9/4)uncaught worker exception 不再帶垮 process;初始化中途失敗安全回退
Google 登入 / 註冊程式完成GSI 一鍵登入(app 通道)+ web code 通道;首登自動簽發白名單 token,寫入 whitelist_registration (L3)
開機自啟 (BootReceiver)完成重啟後自動恢復 VPN 服務
常駐通知 + 警告完成IP 更動通知預設關

3. 近期版本史(重點)

版本日期重點
v0.2.0 (code 9)09-04crash 修復(_fileCorrupt 初始化順序 / ServiceHub 防護)+ StatusScreen v2 重寫 + mockserver 增強(ip_changed 生效、--bind)
v0.2.0 (code 8)08-30Google 登入 / 註冊 app 通道(OAuthClient、GSI launcher、設定頁帳號卡)
v0.1.208-28catch uncaught worker exceptions;LaunchTracer 啟動追蹤(一鍵複製);uptime 時基 bug 修復
v0.1.1Android 14 crash 修復(specialUse FGS);R8 minify+shrink(debug 17MB→9.8MB)
v0.1.0M0–M5 baseline(VPN / DNS 重導 / 白名單申報 / 設定三層優先級)

4. 安裝與下載

APK: dnspilot-v0.2.0-release.apk 📥 直接下載

安裝步驟:

5. 後端與待辦

項目狀態
dnspilot-server(FastAPI)已部署(M0–M4:token / 白名單 / 管理端 / pfSense alias sync)
Google OAuth 雙通道程式完成;等 Cloud Console 建 Web + Android 兩個 client 填 env 後重啟 server
真機回饋v0.1.2 起「縮小」問題是否解決待確認(LogsScreen 有啟動追蹤可一鍵複製)
正式域名反代外部 /v1/* 尚 404(反代未接)