Shadowrocket 背景耗電高嗎?On Demand 按需連線如何設定更省電

常駐連線與 On Demand 按需連線各有取捨。本文說明如何查看電池用量,以及如何依 Wi-Fi 和行動網路設定連線條件。

本文摘要

Shadowrocket(小火箭)的背景耗電,不能只憑 VPN 圖示或電池用量排名判斷。先在相同使用條件下記錄電量變化,再前往 Settings → On Demand 依網路設定連線條件;重點是減少不必要的連線與失敗重試,而非反覆強制結束 App。本文適合已有自己的服務商與連線資訊,並希望在自動連線與續航力之間取得平衡的 iPhone、iPad 使用者。

先說結論:連線時間不等於實際耗電量

Shadowrocket 建立連線後,系統網路延伸功能可在 App 未顯示於前景時處理網路流量。離開 App 畫面不代表通道已停止;看到背景活動,也不表示整段時間都在高負載運作。實際耗電量與流量、無線訊號、連線重試、加密處理,以及其他 App 的網路活動有關。

On Demand 會依照設定條件,讓系統決定何時建立或維持連線;它不是電池最佳化開關,也不是所有 App 閒置後就會立即中斷連線的計時器。如果設定成幾乎所有網路都要連線,使用效果可能接近常駐連線;條件若設得太零碎,切換網路時反而容易增加重新連線的次數。

網路條件變更 系統判斷條件 建立通道 比對規則 送出請求

請區分兩個層面:On Demand 管理連線條件,Global Routing 管理流量去向。將 Global Routing 設為 Direct,不等於關閉 VPN;使用 Config 並讓部分請求符合 DIRECT,也不代表系統會卸載通道。排查耗電問題時,請分別記錄「是否連線」與「連線後流量如何處理」。

在系統 Battery 中建立可比較的記錄

先開啟 iPhone 或 iPad 的系統 Settings → Battery,查看用量圖表、對應時段與 App 活動。若系統顯示語言不同,選單可能會顯示為「設定 → 電池」;時間範圍與詳細項目請以裝置上的實際畫面為準。選擇發生異常的時段,避免拿全天統計和某一小時的感受相比。

  1. 選定時段

    在系統 Settings → Battery 選擇要檢查的時段,記錄起始與結束電量、螢幕活動,以及 Shadowrocket 的用量占比。記錄時也註明裝置是否正在充電。

  2. 固定條件

    維持相同地點、相同 Wi-Fi、相近的螢幕亮度與使用情境。暫停大型下載、照片同步等會明顯改變流量的工作,再比較連線策略。

  3. 記錄基準

    先依目前設定觀察一個完整時段,例如 60 分鐘。記錄是否播放影片、鎖定螢幕的時間,以及期間是否切換網路;60 分鐘只是測試區間,不代表續航保證。

  4. 每次只改一項

    下一次只調整一項 On Demand 網路條件,其餘設定保持不變。以相同長度的時段重複觀察,避免同時更換連線、DNS 和規則。

電池清單中的百分比通常表示所選時段內各項用量的相對占比,並非 App 直接消耗了多少電量百分點。例如,裝置電量從 80% 降至 70%,而 App 用量顯示 20%,不能因此說「該 App 耗掉了 20% 電量」;系統統計也涉及歸因與四捨五入,不能視為精確的電量計。

2 個層面
分別檢查連線條件與流量路由
1 項設定
每輪比較只變更一項設定
60 分鐘
可採用的單輪觀察區間,非實測結果

結論:先比較整台裝置的電量變化

若 App 用量占比上升,但相同使用條件下整台裝置的耗電沒有增加,請先繼續觀察,不要只因排名改換協定或重設所有設定。

Settings → On Demand:依網路設定連線條件

前往 Shadowrocket 的 Settings → On Demand,檢查按需連線的總開關與網路條件。這裡設定的是系統自動連線行為,不是訂閱更新頻率。不同版本的 App 介面可能有所差異,Wi-Fi、行動網路與 SSID 條件的選項請以 App 內目前顯示為準;不要將網路名稱輸入連線伺服器位址欄位。

  1. 保留原有設定

    先記錄 Settings → On Demand 目前的開關、Wi-Fi 條件與行動網路條件。若已有 SSID 條件,請逐項確認,避免新增互相衝突的條件。

  2. 設定 Wi-Fi

    依實際需求決定是否在 Wi-Fi 下自動連線。若 App 提供依 SSID 區分的選項,可為已知網路設定不同條件;SSID 是 Wi-Fi 名稱,不是密碼。

  3. 設定行動網路

    分別檢查行動網路條件。若外出時需要持續使用仰賴現有連線的服務,請保留相應的自動連線條件;若只是偶爾使用,也可選擇手動連線。

  4. 確認網路切換

    儲存後,先從 Wi-Fi 切換至行動網路,再切回 Wi-Fi。每次切換後,等候系統完成網路切換,檢查 Home 的連線狀態,並用 Safari 開啟平常瀏覽的頁面確認網路是否可用。

  5. 檢查鎖定螢幕

    鎖定螢幕後再解鎖,觀察是否重複建立連線,或頁面載入時間過長。若要暫停連線,請先關閉 On Demand,再到 Home 中斷連線,避免自動連線條件再次觸發。

常駐連線、按需連線與手動連線如何選擇

選擇時應考量連線是否需要持續可用,而非認定某種方式一定更省電。在穩定的網路下維持連線,可以減少手動操作;長時間完全不需要相關服務時,中斷連線則可減少通道本身的運作。On Demand 介於兩者之間,實際效果取決於條件是否符合使用情境。

連線方式適用情境檢查重點
維持連線持續使用需要目前連線的服務觀察連線是否穩定、有無持續傳輸或失敗重試
On Demand依 Wi-Fi、行動網路條件自動管理連線確認切換後的狀態符合預期,避免條件反覆觸發
手動連線僅用於短時間的任務關閉自動觸發後手動中斷連線,下次使用前再重新連線

若行動網路訊號微弱,或存取點頻繁切換,耗電增加可能來自無線通訊與重試。此時請先在穩定的 Wi-Fi 下重新測試。單次延遲測試出現數值,只能表示當下的測試請求收到回應,無法證明長連線、DNS 查詢與網頁請求都能持續正常運作。

結論:依使用情境縮小自動連線範圍

若只有外出時需要自動連線,請先只調整已知 Wi-Fi 的條件,再測試行動網路情境;不要為了縮短連線時間而一次關閉所有條件,導致原本需要持續連線的工作中斷。

反覆重新連線時,先查明錯誤再考慮省電

發現連線狀態反覆變化時,請開啟 Settings 中與記錄相關的項目,保留異常時間前後的記錄。以下是網路記錄中可能出現的錯誤原文,實際前後文會依連線與 App 內記錄而異。這些錯誤不是電池警示,也不能只憑單一錯誤判定伺服器端或用戶端故障。

錯誤:connection refused

原因:連線目標或中間設備主動拒絕連線,常見的檢查方向包括位址、連接埠與服務監聽狀態。

處理方式:將 Home 中現有連線的位址、連接埠與服務商提供的資訊逐項比對,確認對應服務可正常使用後,再測試一次。

錯誤:i/o timeout

原因:讀取或寫入操作未能在等待時間內完成,可能與連線封包遺失、目標沒有回應或網路限制有關。

處理方式:先在穩定的 Wi-Fi 下使用同一連線重新測試,再與行動網路比較;記下發生時間,避免連續重新整理或重複測試而增加額外流量。

若問題只在切換網路後出現,請優先檢查 On Demand 條件與切換後的連線狀態;若同一連線在不同網路下都持續失敗,則應檢查連線參數與服務狀態。協定名稱本身無法決定固定的耗電排名,傳輸條件、伺服器回應與實際流量都可能影響結果。

Config 與 DNS:避免將路由問題誤認為背景耗電

在 Home 檢查 Global Routing 目前的選擇;使用 Config 時,再前往 Config 確認目前生效的設定檔。Proxy、Direct、Config、Scene 是流量處理相關選項,不能用來取代 Settings → On Demand 的連線條件設定。若使用 Scene,也應確認實際關聯的設定,而不只是查看名稱。

以下規則片段僅用於說明比對順序,不是省電設定,也不應直接取代完整檔案。規則由上而下比對,FINAL 放在最後。符合 DIRECT 的請求會直接連線至目標,但系統通道仍可能維持運作。

[Rule]
DOMAIN-SUFFIX,example.com,DIRECT
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY

若網頁持續載入中,但連線狀態穩定,請另外檢查 DNS 與規則比對結果。解析失敗可能導致 App 重複送出請求,但不能因此將所有耗電問題都歸因於 DNS。使用自訂 DNS 或 DNS over HTTPS 時,請先確認目前網路可連線至解析端點;比較續航時,請勿在同一輪測試中同時更換 DNS、規則與協定。

設定完成後的檢查清單

完成調整後,至少測試一次 Wi-Fi 與行動網路切換、一次鎖定螢幕後恢復,以及一段正常使用情境。將結果與最初的 Battery 記錄比較,優先保留穩定且符合使用需求的設定。持續連線失敗的情況不適合用來比較續航,因為反覆重試會改變測試負載。

Shadowrocket 是 Apple 平台的付費用戶端,主要供 iPhone、iPad 使用;系統需求與裝置相容性請以 App Store 頁面標示為準。App 採一次性買斷,買斷用戶端 ≠ 線路方案。本文僅說明如何管理使用者已有的連線資訊與系統連線行為。

App Store 正版查核