Shadowrocket(小火箭)的 On Demand 是依條件觸發 VPN 連線的機制,不是省電開關。排查時應先對照 iOS 電池統計時段,再區分持續傳輸、網路切換和連線重試。本文適合已經有自己的服務商與訂閱、想找出背景耗電原因的使用者,說明如何評估是否開啟,以及如何逐一變更設定進行驗證;不預設某一種設定一定比較省電。
一、先查看 iOS 電池用量,別只看占比就判斷耗電
在 iPhone 或 iPad 的系統設定中開啟「電池」,選擇問題發生的日期與時段,再查看 App 耗電量、螢幕使用時間及背景活動資訊。統計入口和顯示名稱可能隨系統版本變動,請以裝置實際畫面為準。先記下起始與結束電量、期間是否充電,以及當時使用 Wi-Fi 或行動網路。
電池列表中的百分比通常代表所選時段的耗電占比,不等於裝置損失了相同百分比的電量。例如裝置在該時段總共下降 10 個百分點,某個 App 顯示占比 20%,不能解讀為該 App 讓整台裝置掉了 20 個百分點。背景活動時間也不代表處理器一直滿載運作。
- 對照時段:選擇異常耗電發生的時段,避免用全天統計解釋十幾分鐘的網路問題。
- 確認實際活動:記錄照片同步、檔案傳輸、影片播放等活動。流量經由 VPN 網路延伸功能處理時,不能只看單一 App 的統計占比,就判定最初是哪個 App 發出請求。
- 排除明顯干擾因素:記錄訊號微弱、裝置發熱、充電和系統背景工作等情況;這些因素都會影響整體耗電。
- 保留基準設定:變更前記錄 Home 的連線狀態、Global Routing 目前選項,以及 Settings → On Demand 的設定。
二、On Demand 的觸發條件與背景行為
前往 Shadowrocket 的 Settings → On Demand,檢查總開關及目前畫面提供的網路條件。On Demand 會將按需連線規則交由系統處理;符合網路條件、規則動作及系統連線判斷時,系統可能發起 VPN 連線。開啟後不代表螢幕一鎖定就會中斷,也不代表每個網路請求都會重新建立一次通道。
從 Wi-Fi 切換到行動網路、重新連上無線網路,都可能促使系統重新評估規則;是否連線仍取決於實際設定與網路狀態。已建立的連線也可能在網路切換時恢復或重新建立,因此不能將所有恢復動作都歸因於 On Demand。伺服器無法連線、驗證錯誤及底層網路不穩定等問題,應分別排查。
- 開啟時:符合規則條件時可自動發起連線,減少手動操作;若連線目標持續失敗,反覆嘗試可能增加背景活動。
- 關閉時:停止使用這套按需觸發機制,但不代表目前的 VPN 會立即中斷,也不會自動阻止其他 App 發出背景請求。
- 需要暫停連線時:先關閉 On Demand,再返回 Home 關閉連線開關,並確認系統中的實際 VPN 狀態。若只關閉 Home 開關,符合條件的按需規則仍可能再次觸發連線。
不建議把從背景多工畫面關閉 Shadowrocket 當成日常中斷連線的方式。App 介面與由系統管理的 VPN 網路延伸功能,生命週期並不相同;關閉介面不能取代檢查連線開關和按需規則。
三、Wi-Fi 與行動網路如何取捨
設定應依使用需求與網路穩定度決定,不是「Wi-Fi 一定要開、行動網路一定要關」。固定 Wi-Fi 下長時間維持低流量連線,與通勤途中頻繁切換基地台、反覆重試連線,耗電條件並不相同。先確保連線穩定,再判斷是否值得保留自動觸發。
| 情境 | 建議起始設定 | 驗證重點 |
|---|---|---|
| 固定且穩定的 Wi-Fi | 有持續連線需求時,保留 On Demand | 鎖定螢幕期間是否有大量同步流量,是否反覆出現連線錯誤 |
| 行動網路訊號較弱 | 暫時關閉自動觸發,改為按需手動連線比較 | 先確認耗電是否與訊號微弱及連線重試同時發生 |
| Wi-Fi 與行動網路頻繁切換 | 先在單一穩定網路下測試,再恢復切換情境 | 錯誤是否集中在切換時,而非連線穩定期間 |
| 僅短時間使用連線 | 可關閉 On Demand,改由 Home 手動管理 | 使用完畢後確認連線已中斷,並確認後續工作是否仍需連線 |
| 需要先登入的公共 Wi-Fi | 先完成網路登入,再測試 VPN | 底層網路能否正常連線,網路驗證是否已完成 |
結論:先在穩定網路下測試,再決定是否保留自動觸發
若固定 Wi-Fi 下連線穩定,只有切換網路時才出現耗電與錯誤,應優先檢查切換過程及網路可達性;不要同時修改協定、規則和 On Demand,否則無法判斷是哪項設定帶來改善。
如果實際畫面提供依網路類型或 SSID 設定條件的選項,可按需求逐項設定並測試;不要假設所有系統和介面都有相同選項。關閉某個網路條件,只會改變相應的觸發邏輯,不代表該網路上的所有請求都會自動改為 DIRECT。
四、發生連線錯誤時,先停止反覆失敗
問題發生時,查看連線記錄中的時間、目標與錯誤內容。以下列出的是網路記錄中可能出現的標準錯誤訊息,不保證每次都會以固定的彈出視窗顯示;實際文字可能附帶系統或協定相關資訊。單次錯誤不足以證明耗電異常;只有錯誤密集重複,且發生時間與耗電吻合時,才值得進一步比對。
錯誤:Connection refused
原因與處理方式:目標連接埠可能沒有程式監聽,或連線遭到明確拒絕——請核對自己既有伺服器的位址與連接埠,並向自己的服務商確認服務狀態,不要用反覆切換 Home 開關取代檢查。
錯誤:Operation timed out
原因與處理方式:連線或讀寫操作未能在指定時間內完成,可能與網路路徑無法連通、封包遺失或目標沒有回應有關——先在穩定的 Wi-Fi 下使用同一台伺服器重新測試,再與行動網路的結果比較;不要只憑逾時就認定驗證資訊有誤。
- 記下錯誤發生時間,檢查是否緊接在 Wi-Fi 中斷或切換至行動網路之後。
- 核對 Home 中選取的伺服器,使用 Connectivity Test 檢查當時是否可連線;單次測試成功不能證明背景連線一直穩定。
- 若同一錯誤持續重複,暫時關閉 On Demand 並中斷連線;待網路或伺服器問題排除後再測試。
- 只有在位址、連接埠或驗證資訊確實變更時,才更新自己的訂閱;更新後重新確認選取的伺服器,不要把反覆更新訂閱當成通用省電方法。
協定也會影響排查方向。例如 Hysteria2 以 QUIC 為基礎,使用 UDP;如果目前網路限制 UDP,應先確認協定是否可連線。不能只因另一種協定使用 TCP,就推定它在所有裝置和網路上都更省電。伺服器連接埠請依自己現有的設定為準,不要為了解決連線問題而任意改成 443。
五、Global Routing 與 On Demand 各自控制什麼
On Demand 負責依條件觸發連線,Global Routing 則決定連線期間如何選擇流量處理路徑;兩者不是同一個開關。請依目前用途選擇 Home → Global Routing 中的 Proxy、Direct、Config、Scene;Scene 的實際效果取決於對應的情境設定,不能直接視為固定的省電模式。
- Proxy:採用代理路由方式,不代表會自動減少請求次數。
- Direct:採用直接連線方式,但切換至 Direct 不等於關閉 VPN 網路延伸功能。
- Config:依目前設定分流;應檢查 Config 中實際啟用的設定,而不只是查看訂閱中的伺服器。
- Scene:先確認情境內容及其生效條件,再判斷流量路徑,避免測試期間自動切換而引入變因。
使用 Config 時,DOMAIN-SUFFIX 依網域後綴比對,IP-CIDR 依位址網段比對,GEOIP 依位址地理資料庫比對,FINAL 則處理前面未比對到的請求。DIRECT、PROXY 和 REJECT 是策略結果,不是電池模式。規則順序會影響結果,不應為了降低電池列表中的占比而任意更動業務所需的規則。
六、透過單一變因對照確認是否真的改善
以下是建議的記錄方式,不是實測續航成績。請在相同地點、相同網路及相近電量下進行兩組觀察,保持選取的伺服器、Global Routing、螢幕狀態和背景工作一致,只變更 On Demand。每組開始前,都先在 Home 建立相同的連線狀態,避免把「是否連線」的差異誤當成「是否按需觸發」的差異。
- 第一組:開啟 On Demand,連線後鎖定螢幕,記錄起始與結束電量、網路變化及錯誤發生時間。
- 第二組:關閉 On Demand,維持手動連線,並在相同條件下觀察;若連線中途中斷,應記錄下來,並註明兩組狀態已不再一致。
- 補充使用情境:若要比較「持續自動連線」與「使用完畢後手動中斷」,請另外進行一輪測試,並註明這次也變更了連線持續時間。
- 再次檢查:對照系統電池頁面與連線記錄;短時間內若只差一、兩個百分點,應延長觀察並重複測試,不要直接下結論。
結論:保留設定有據、結果可重現
需要持續連線且網路穩定時,可保留 On Demand;只在固定時段使用時,可改為手動連線。若關閉後耗電情況仍相同,下一步應檢查持續傳輸、訊號微弱及連線錯誤,而不是反覆切換按需開關。
問題消失後,逐項恢復日常設定;每恢復一項,都確認實際連線狀態。向自己的服務商回報時,可提供發生時間、網路類型及已移除敏感資訊的錯誤內容;請勿公開訂閱網址、驗證資訊或完整連線憑證。更多連線與規則操作,可參考本站教學和規則手冊。