本文重點

Shadowrocket(小火箭)的耗電量,不能只看 VPN 圖示或背景執行時間判斷。On Demand 用來設定自動連線條件,並非固定的省電開關。本文適合已備妥自有服務資訊的 iPhone、iPad 使用者,將說明隧道常駐、Wi-Fi 與行動網路條件、連線失敗重試及電池用量對照,協助分辨正常的流量處理耗電與需要排查的異常活動。

先判斷:連線常駐不等於持續高負載

Shadowrocket 建立連線後,系統會透過網路延伸功能處理相關流量。返回主畫面、鎖定螢幕或切換到其他 App,不一定會中斷這條隧道;反過來說,隧道仍在運作,也不代表處理器一直處於高負載。實際耗電量取決於流量、加密處理、網路訊號、連線維護及失敗後的重試頻率。

瀏覽影片、同步照片、下載大型檔案時,螢幕、無線通訊與資料處理都會耗電。部分網路處理用電可能計入 Shadowrocket 的電池用量,因此不能直接把系統電池頁面顯示的占比,解讀為「用戶端額外耗掉了整台裝置同等比例的電量」。占比也會受到其他 App 用電減少的影響。

App 請求 系統隧道 規則比對 目標連線 資料傳輸

On Demand 控制哪些項目,又不控制哪些項目

在 Shadowrocket 的 Settings → On Demand 設定按需連線條件後,系統會依據已儲存的規則,決定是否啟動 VPN 連線。這項功能可讓連線行為配合使用情境,例如只在指定網路環境下連線;它不是每次有請求才啟動,傳輸完成後就立即關閉隧道。

On Demand 與 Home → Global Routing 是不同層級的設定。前者管理連線的觸發條件;後者決定進入隧道的流量如何處理。將 Global Routing 改為 Direct,不代表 VPN 已關閉,也不代表 On Demand 已停用。選擇 Config 時,流量的實際去向取決於目前設定中的規則與策略。

設定項目主要用途耗電判斷限制
Settings → On Demand設定自動連線的觸發條件連線次數與持續時間可能改變,無法保證更省電
Global Routing → Proxy採用全域代理路由模式仍取決於實際流量與遠端連線品質
Global Routing → Direct採用全域直連路由模式不代表網路延伸功能已停止
Global Routing → Config依目前設定比對規則與策略需配合實際命中結果檢查

設定 Wi-Fi 與行動網路的連線條件

先釐清「哪些網路環境需要連線」,再設定 On Demand。不要把「Wi-Fi 一律關閉、行動網路一律開啟」當成通用做法:家用 Wi-Fi、公共 Wi-Fi 與行動網路可能有不同的存取需求,網路類型本身也無法證明網路安全。實際選項與排列方式請以目前介面為準。

  1. 確認手動連線正常

    先在 Home 選擇自有伺服器並連線,確認需要使用的網頁可以正常開啟。若手動連線本身不正常,請先排查伺服器與設定,避免把連線故障誤判為 On Demand 條件問題。

  2. 開啟條件設定

    前往 Settings → On Demand,檢查目前是否啟用及已儲存的條件。修改前先記錄原設定,特別是網路類型、Wi-Fi 名稱及對應的連線動作。

  3. 區分網路條件

    依介面提供的 Wi-Fi 與行動網路條件,設定所需動作。若要比對 Wi-Fi 名稱,請確認 SSID 完全相符;名稱相近的兩個網路不能直接視為同一個比對對象。

  4. 測試網路切換

    儲存後,分別連線至目標 Wi-Fi、另一個 Wi-Fi 與行動網路。每次等網路穩定後,返回 Home 確認連線狀態,並實際開啟需要瀏覽的網頁。

  5. 測試鎖定螢幕後恢復

    在同一個網路下鎖定螢幕數分鐘,再解鎖並測試連線。記錄是否重新連線,以及是否曾短暫無法使用;若要暫時停用,請先停用 On Demand,再關閉 Home 連線。

裝置頻繁進出 Wi-Fi 涵蓋範圍時,可能多次切換網路,現有連線也可能需要重新恢復。若設定導致隧道不斷建立又中斷,省下的閒置連線時間可能被反覆連線抵銷。通勤時應先確認切換是否穩定,再決定是否縮小自動連線的適用範圍。

以可重複的電池用量對照取代主觀判斷

在 iPhone 或 iPad 的系統設定中前往「電池」,選擇相近時段查看電量、螢幕使用時間與 App 用量。背景活動時間只能表示有相關活動,不能直接換算為耗電功率。系統頁面的顯示方式可能隨版本變動;裝置系統需求請以 App Store 頁面標示為準。

建議先進行兩組各 60 分鐘的測試,使用同一台裝置、同一個 Wi-Fi,並維持相近的螢幕亮度與相同的使用任務。以下為記錄方式,並非實測結果;不要將短時間下降的幾個百分點直接推算為全天續航。

對照組連線設定記錄項目
A:穩定連線停用 On Demand,手動連線 60 分鐘起始與結束電量、螢幕亮起時間、使用任務、裝置溫度感受、連線中斷次數
B:按需連線啟用目標條件,執行相同任務 60 分鐘記錄相同項目,並額外記下自動連線與網路切換次數
C:暫停基準停用 On Demand 並關閉連線僅在任務都能正常完成時進行比較,避免因存取失敗造成任務不同

耗電異常時,先檢查重試,再調整協定或規則

裝置閒置時若明顯發熱,先確認是否有持續流量或反覆連線。檢查 Home 目前選取的伺服器,再核對自有服務的位址、連接埠、驗證資訊與傳輸參數。不要為了測試任意更改連接埠;例如原服務使用 443,只有在遠端確實監聽該連接埠且參數一致時才能連線。

以下兩則是網路錯誤中可能出現的原文提示,不代表每種協定都會使用相同訊息。只有在記錄中實際出現對應內容時,才依該項排查;若未出現,就不應視為已確認的原因。

錯誤:Connection timed out

原因與解決方式:連線未能在指定時間內完成,可能是遠端沒有回應、連線路徑不通或網路不穩定。先核對自有伺服器的位址與連接埠,在穩定的 Wi-Fi 下重試,再用同一台伺服器測試行動網路;不要連續手動觸發大量重新連線。

錯誤:Network is unreachable

原因與解決方式:目前網路沒有可用的目標路由,網路切換期間也可能暫時出現。先確認裝置的基本網路連線正常,等 Wi-Fi 或行動網路穩定後再試;若持續發生,請核對目標位址及目前網路是否可連至該位址。

若沒有反覆重新連線,但傳輸量很大,應先找出正在發出請求的 App,再檢查 Global Routing。使用 Config 時,可搭配請求記錄核對實際命中的規則與最終策略;設定中即使有 DOMAIN-SUFFIX、GEOIP、IP-CIDR 或 FINAL,也不能證明相關流量一定依預期處理。規則只決定流量去向,不會自動減少流量。

常見問題:連線常駐、關閉背景與自動重新連線

開啟 On Demand 就一定更省電嗎?

不一定。先到 Settings → On Demand 確認條件是否確實減少不需要的連線,再用相同網路與任務對照電池記錄。若條件始終要求連線,使用時間可能與持續連線相近。

從背景 App 切換器滑掉 App,為什麼仍顯示連線?

App 介面與由系統管理的 VPN 網路延伸功能並非同一層。需要暫停時,請開啟 Shadowrocket,先在 Settings → On Demand 停用自動觸發,再前往 Home 關閉連線,並確認系統 VPN 狀態。

鎖定螢幕後仍在耗電,算是異常嗎?

先查看系統「電池」頁面中的對應時段,再確認是否有同步、音訊播放、背景請求或連線重試。鎖定螢幕不代表裝置停止連網;只有在任務相近的對照中持續出現明顯差異,才適合進一步排查。

一切換到行動網路就重新連線,該調整哪裡?

先到 Settings → On Demand 檢查行動網路與 Wi-Fi 條件是否符合預期,再找訊號穩定的地點重複測試切換。網路位址變更可能使原連線需要恢復;請分別記錄短暫恢復與持續反覆失敗的情況。

暫時不需要連線時,如何避免自動恢復?

先在 Settings → On Demand 停用按需觸發,再關閉 Home 連線。接著重新開啟網頁並檢查狀態,確認沒有其他系統自動化或裝置管理設定要求連線;恢復使用時再啟用原有條件。