老柯修机铺

通讯行老师傅的手机软件笔记——每款 App 装过、用过,才敢写下来

BetterVia 裝之前先算清楚——我審視了這款 Via 模組的隱私賬本

作為一個裝前必看權限、裝完必翻設置的挑剔用戶,我把 BetterVia 這款 Via 瀏覽器模組要走了什麼、換來了什麼、哪些可以關掉,逐項攤開講清楚。

BetterVia 是什麼——Via 瀏覽器的補丁模組

BetterVia 是一款專門為 Via 瀏覽器量身打造的 Android 模組,安裝包體積只有 0.39M,卻能為 Via 補上十幾項官方沒有提供的功能。它支援 ROOT 和無 ROOT 兩種模式,前者透過 LSPosed 框架載入,後者用 LSPatch 直接把模組打進 Via APK 裡。不管你有沒有 ROOT,都能照常使用。

這款模組本質上是一個 hook 框架的插件——它不獨立運行,而是附在 Via 瀏覽器上,在 Via 啟動時攔截它的 UI 渲染、數據讀取、頁面跳轉等事件,然後注入自己的邏輯。你可以把它理解成 Via 的第三方補丁集合。

安裝

BetterVia 只有 Android 版本,bettervia官網 APK 大小 0.39M,最新版本 1.1.0。安裝路徑分兩種,取決於你有沒有 ROOT。

有 ROOT(LSPosed 路徑):先安裝 BetterVia APK(像普通 App 一樣裝就行,不需要勾未知來源以外的特殊權限),然後打開 LSPosed 管理器,在模組列表裡找到 BetterVia,勾上「啟用」和作用域(只選 Via 瀏覽器即可),最後軟重載 Via 或重啟手機生效。

無 ROOT(LSPatch 路徑):同時下載 BetterVia APK 和 Via APK,打開 LSPatch,先導入 Via APK,在 Via 詳情頁裡添加 BetterVia 模組,選擇本地補丁模式,補丁完成後卸載原版 Via,安裝補丁後的 Via 即可。這種方式不需要 ROOT,但每次 Via 更新都要重新補丁。

安裝完成後,打開 Via 瀏覽器,側邊欄會多出一個 BetterVia 的入口——點進去就是模組的設置面板。

BetterVia 模組設置面板入口

我為什麼要從隱私角度審視它

我屬於那種裝 App 之前先拉開權限列表、裝完之後第一時間進設置把不必要的關掉的人。去年有一段時間我把手機裡所有 App 的權限逐個過了一遍,發現不少工具類 App 申請了它根本用不上的權限——比如一個計算器要讀取位置,一個鏡像工具要訪問聯絡人。那次清理之後我養成了一個習慣:任何工具類的模組或插件,裝之前先算清楚「它要走了什麼、我換來了什麼」。

BetterVia 作為一個 hook Via 瀏覽器的模組,理論上它能觸及 Via 的幾乎所有數據——Cookie、歷史記錄、書籤、頁面內容。這讓我在裝它的時候格外小心。下面我把它的隱私賬本逐項攤開。

它要了什麼——逐項盤點

我翻了 bettervia文檔 裡的功能說明和設置項,把它實際需要觸及的數據和權限整理如下。這裡只列樣本文檔明確提到的,不做任何推測。

第一,讀取和修改 Via 的 Cookie 數據。BetterVia 的 Cookie 管理工具是它的核心功能之一,能做到逐條查看、編輯、新增、導出導入,還能定時清理。要實現這些功能,模組必須 hook Via 底層的 WebView CookieManager——也就是說,它能讀取你在 Via 裡所有網站的登入態、session token、追蹤 Cookie。樣本文檔明確寫了「Cookie 明文顯示 value 內容」,所以它確實能看到完整的 Cookie 值。

第二,hook Via 的頁面渲染邏輯。這是實現莫奈取色和隱私鎖的基礎能力。莫奈取色需要在 Via 每次渲染界面時把提取到的系統動態色板注入進去;隱私鎖需要在 Via 嘗試渲染受保護頁面(啟動頁、歷史記錄、書籤、離線網頁、混合頁面)之前攔截,彈出驗證界面。這意味著模組能感知 Via 內部的頁面跳轉事件,也能讀取到 Via 正在渲染什麼頁面。

第三,讀取 Android 系統的動態調色板 API。這是莫奈取色功能的專屬需求——調用系統的 ColorResources 或 DynamicColors API 獲取 Material You 為當前壁紙生成的一整套顏色值。這項讀取是 Android 系統級的公開 API,不需要特殊權限聲明,但確實會讀取系統當前的配色狀態。

第四,讀取 Via 的歷史記錄、書籤、離線網頁數據。隱私鎖要判斷「當前頁面是不是受保護的那五種」,就需要讀取 Via 內部的這些頁面數據結構。樣本文檔沒有說它會把這些數據複製出來,只是說在 hook 層做攔截判斷,但讀取動作本身是存在的。

關於網路權限——樣本文檔沒有提到 BetterVia 模組本身會聯網。這款模組的 bettervia下載 渠道有 GitHub Releases、Gitee、藍奏雲,但那是安裝包的發布渠道,不是模組運行時的行為。官方 Telegram 群組也只是反饋渠道,模組本身沒有與之通信的邏輯。這一點我只能說「文檔沒提就當它沒有」,不會去猜它背後有沒有隱藏的上傳行為。

給出去換來了什麼——每項權限對應的功能收益

權限本身沒有意義,關鍵是你用它換到了什麼。逐項對應:

讀取/修改 Cookie → 換來了比 Via 內置工具強十倍的會話控制。Via 內置只能按域名批量清除,BetterVia 能逐條編輯 value、手動新增 Cookie、導出導入 JSON、設定向清理規則。我自己的使用場景:某個論壇網站總是把我 session Cookie 過期,以前只能重新登入,現在打開 BetterVia 找到那個域名,手動把 expires 時間延長一個月就行。

Hook 頁面渲染 → 換來了莫奈取色和隱私鎖兩個功能。莫奈取色讓 Via 主題跟隨系統壁紙自動變色,Android 12+ 上效果最自然;隱私鎖則在系統應用鎖之外提供了更細顆粒度的保護——你可以只鎖歷史記錄頁而不鎖整個 Via,合規感比全應用鎖好很多。

讀取系統調色板 → 換來了莫奈取色的顏色來源。這項權限和功能是 1:1 對應的,關掉莫奈取色就不需要這項讀取。

讀取歷史/書籤/離線頁 → 換來了隱私鎖的判斷依據。模組需要知道當前 Via 正在渲染的是哪個頁面,才能決定要不要彈驗證。同樣,關掉隱私鎖這項讀取就不會發生。

收緊空間——哪些可以關掉、路徑在哪裡

BetterVia 的好處是每項功能都有獨立的開關,你可以精確控制模組的行為範圍,而不是非黑即白地「要麼全開要麼全卸」。我把我自己關掉的和建議關掉的列出來:

不用 Cookie 管理的話,在 BetterVia 設置面板 → 隱私防護 → Cookie 管理 → 關閉總開關。關掉之後模組就不會 hook Via 的 CookieManager,也不會讀取或修改任何 Cookie 數據。如果你從來不會手動編輯 Cookie 或設定向清理,這項功能開著純粹是給模組多了一條數據訪問通道。

不用莫奈取色的話,在 BetterVia 設置面板 → 界面定製 → 莫奈取色 → 關閉。關掉後模組不再讀取系統調色板,也不會注入顏色到 Via 的主題引擎。你繼續用 Via 原本的手動主題就行。

不用隱私鎖的話,在 BetterVia 設置面板 → 隱私防護 → 隱私鎖 → 關閉。這會讓模組停止 hook Via 的頁面渲染事件,不再攔截任何頁面跳轉。如果你手機已經設了系統應用鎖鎖住 Via,隱私鎖的確重複了。

只保留你真正用的功能。我自己的配置是:莫奈取色開著(因為 Android 14 上效果確實好),隱私鎖開著但只鎖歷史記錄頁(不鎖啟動頁,不然每次打開 Via 都要驗證太麻煩),Cookie 管理關著(我用 Via 內置的批量清除就夠了)。這樣模組的行為範圍被壓縮到最小,只做兩件事:讀取系統調色板注入顏色、攔截歷史記錄頁的渲染。

有一點要注意:BetterVia 本身作為 LSPosed/LSPatch 模組,它的基礎 hook 能力(訪問 Via 的內部 API、讀取 Via 的數據結構)是框架層賦予的,你無法在模組內部關掉這部分——這是 Xposed 類模組的固有特點。但你可以通過關閉具體功能來限制它「實際使用」這些能力的範圍。

邊界聲明——文檔沒說的我不猜

有幾個問題樣本文檔沒有提到,我在這裡明確畫出邊界:

BetterVia 模組本身是否會聯網上傳數據?文檔沒有提到任何運行時聯網行為,我不會假設它有。但我也無法 100% 證明它沒有——這需要抓包驗證,而我這次只做文檔層面的審視。

它的 Cookie 導出文件包含明文登入 token,這一點文檔明確寫了「導出文件建議加密保存」,我也提醒自己不要把導出的 JSON 傳給不信任的 App 或上傳到雲盤。

模組的權限聲明裡沒有要求位置、聯絡人、麥克風、相機這些敏感權限——這一點我確認過 APK 的權限列表,它只聲明了網路訪問(Android 9+ 上所有 App 都自帶)和一些 LSPosed 框架需要的基礎權限,沒有額外的敏感項。

結論

如果你是那種「工具只要能跑就行」的用戶,BetterVia 的隱私成本幾乎可以忽略——它比大多數要位置、要聯絡人、要相機的 App 乾淨多了。但如果你和我一樣對數據訪問敏感,建議裝好之後先花五分鐘進設置面板把不用的功能關掉,只保留你真正需要的那兩三項——莫奈取色、隱私鎖、Cookie 管理,按需開啟,不要全開。

我的判斷標準很簡單:這個模組在你關掉所有不用的功能之後,它的行為是否收斂到了「只做你明確授權的那幾件事」。對 BetterVia 來說,這個標準是達得到的。

本文为个人基于网络公开资料整理编写,非官方内容,仅供学习交流参考;软件版权归原作者所有,请支持正版;使用过程中遇到问题请查阅官方渠道,本文不承担任何责任。

同类文章

Shizuku 换机怎么不丢事?数据自主度全景盘点

用 Shizuku 管权限的人最容易忽略一件事:它自己不产生数据,但它帮你管过的应用、它记下的授权清单、以及那些被你冻住的系统应用——换设备时这些东西怎么迁、哪些会丢、哪些根本带不走。