Shadowrocketのバックグラウンド消費電力を確認する方法|常時接続とOn Demandの使い分け

iOSのバッテリー使用状況をもとに、常時接続や頻繁な再接続、On Demandが消費電力に与える影響を解説。利用状況に応じた選び方も紹介します。

この記事の要点

バッテリー使用量の割合、端末全体の実際の減り方、ネットワークの再接続を分けて確認してから、On Demandを使うか判断しましょう。自分で設定した構成を使っていて、Shadowrocketのバックグラウンド使用量が多いと感じるiPhone・iPadユーザー向けです。同じ条件で記録を取り、接続の安定性を確認したうえで、安定した常時接続、条件に応じた接続、手動接続を比較します。On Demandは条件に応じてシステムが接続する仕組みで、常に有効な省電力スイッチではありません。

バッテリー使用状況を確認し、割合を消費量と混同しない

Shadowrocketのメイン画面をバックグラウンドに移しただけでは、システムのVPNトンネルが切断されたとは限りません。トンネル経由でほかのアプリの通信が続く場合もあるため、「バッテリー」画面にバックグラウンドでのアクティビティが表示されても、それだけで異常とは判断できません。調査が必要かどうかは、端末全体のバッテリー残量の減り方、画面の使用状況、実際のネットワーク通信、同じ条件で現象が再現するかを合わせて確認してください。

iOSの「設定」から「バッテリー」を開き、確認したい日付や時間帯を選んで、Shadowrocketの使用量とアクティビティを確認します。グラフの名称や選べる期間はiOSのバージョンによって異なる場合があるため、実際の端末の表示を確認してください。アプリごとのバッテリー使用割合は、選択した期間内での使用量の配分を示すもので、その割合と同じだけバッテリー容量をアプリが直接消費したという意味ではありません。

  1. 時間帯を選ぶ

    「設定」→「バッテリー」で、異常が見られた時間帯を選択します。その時間帯に動画の再生、写真の同期、システムアップデート、インターネット共有などがなかったかも確認し、端末全体の負荷を特定のアプリのせいにしないようにします。

  2. 条件を記録する

    開始時と終了時のバッテリー残量、観察時間、画面の点灯状態、Wi-Fiまたはモバイル通信、充電の有無、Homeでの接続状態を記録します。比較しやすいよう、まずは60分間の観察をおすすめします。この時間は比較の目安であり、消費電力の合格基準ではありません。

  3. アクティビティを確認する

    対象時間帯のバックグラウンドアクティビティを確認し、ほかのアプリが継続して通信していなかったか振り返ります。バックグラウンドでの動作時間を、CPUがフル稼働した時間や追加のバッテリー消費量にそのまま換算することはできません。

  4. 繰り返し観察する

    同じ場所、近い電波強度、同じ画面の使用条件で記録を繰り返します。充電中の観察結果と、電波の弱い場所での観察結果を一度ずつ比べて、どちらの接続設定が省電力かを判断しないでください。

常時接続と頻繁な再接続では、電力消費の要因が異なる

安定した常時接続では、トンネルの処理や暗号化、プロトコルの維持に通信が発生することがあります。ただし、接続時間が長くても、常に大量のデータが流れているとは限りません。一方、切断と再接続を繰り返すと、名前解決や通信接続の確立、認証、アプリからのリクエストの再試行がそのたびに発生することがあります。モバイル通信の電波が弱い場合やネットワークが頻繁に切り替わる場合は、こうした処理に無線通信自体の消費電力も加わります。

ネットワーク環境が変化 既存の接続が無効に 接続を再確立 アプリのリクエストを再試行 データを再送信

この流れは、次のような現象を説明するものです。Wi-Fiの電波が届く範囲では正常に動作する端末が、範囲を離れると一時的に通信できなくなり、接続回復後にアプリがまとめてリクエストを再試行することがあります。ログの時刻がネットワークの切り替わりと一致する場合は、すぐにプロトコルを変えたり自動接続のルールを追加したりせず、まず接続の安定性を確認しましょう。ステータスバーにVPNアイコンが表示されているだけでは、こうした再接続の繰り返しが起きたかどうかは判断できません。

On Demandは接続するタイミングを制御する機能で、ルールによる通信振り分けとは異なる

ShadowrocketでSettings → On Demandを開き、現在のスイッチとルールを確認します。On Demandは設定した条件に基づいてシステムが接続動作を決める機能です。「画面が消えたらすぐ切断する」機能でも、「Shadowrocketを開いたときだけ接続する」機能でもありません。バックグラウンドアプリの通信リクエストによって、条件を満たした接続が維持される場合もあります。実際の動作はルールとシステムの状態を踏まえて確認してください。

4項目
Global Routingの選択肢:Proxy / Direct / Config / Scene
2種類
個別に確認するネットワーク:Wi-Fi / モバイル通信

接続を開始する条件と、通信の経路は別々の設定です。Home → Global RoutingのProxy、Direct、Config、Sceneはルーティングの動作を決め、Settings → On Demandは必要に応じて接続する条件を決めます。Directを選んでもシステムのVPNトンネルが切断されるわけではなく、Configを選んでもプロキシルールに一致した場合だけトンネルが確立するわけではありません。消費電力を比較するときは、この2つの設定を同時に変更しないでください。

設定項目 役割 確認時のポイント
Homeの接続スイッチ 現在の接続を手動で開始または停止します。 手動接続の基準を記録します。接続を切ったままにしたい場合は、先にOn Demandの設定を確認してください。
Settings → On Demand 設定した条件に基づいて、システムに接続動作を開始させます。 まず条件を1つに絞って動作を確認し、その後ひとつずつ追加します。
Home → Global Routing Proxy、Direct、Config、Sceneを選択します。 比較する間は同じモードを使い、ルーティング方法を同時に変更しないでください。
Config 構成ファイルとそのルールを管理します。 意図した構成を使っていることを確認し、バックグラウンドの大量通信が意図せずプロキシ経由にならないようにします。

たとえば、Config内のDOMAIN-SUFFIX,example.com,DIRECTはドメイン別のルールであり、On Demandの接続条件ではありません。通信をDIRECTに切り替えても、トンネルが維持される場合があります。「切断するとバッテリーの減りが改善するか」を確認するには、On Demandの設定を管理したうえで実際に接続を停止してください。Directに切り替えるだけでは確認できません。

接続方法3種類を、条件を1つずつ変えて比較する

消費電力を比較する前に、すでに設定済みの構成で正常に接続できることを確認してください。テスト中にサブスクリプションの更新、サーバーの変更、DNSの変更、プロトコルの切り替え、On Demandの調整を同時に行うと、バッテリーの変化がどの要因によるものか判断できません。テスト中は手動での連続速度測定も控えてください。速度測定自体が接続とネットワーク通信を発生させます。

  1. 現在の設定を記録する

    Homeで選択中の構成、Global Routingのモード、Settings → On Demandの現在の設定を記録します。記録は必要最小限にとどめ、サブスクリプションの完全なURLや認証情報を公開のトラブル記録に載せないでください。

  2. 切断状態を観察する

    On Demandをオフにしてから、Homeで接続を停止します。その接続を必要としない同じ軽い使用条件で60分間記録し、その間に自動再接続がないことを確認します。切断すると必要な通信に支障が出る場合は、この条件でのテストを省略し、その理由を記録してください。

  3. 常時接続を観察する

    On Demandをオフにしたまま、Homeで設定済みの構成に手動接続します。同じネットワーク、近い通信負荷、同じ観察時間で、端末全体のバッテリー残量の変化と再接続の有無を記録してください。

  4. On Demandを観察する

    Settings → On Demandを開き、確認したい条件を有効にします。条件が実際に適用されたか、接続が何度も確立されたか、前面のアプリを使っていない間もバックグラウンド通信があったかを記録してください。

  5. 差を再確認する

    明確な差が出た条件では、もう一度テストを繰り返します。バッテリー残量の表示は丸められるため、短時間のわずかな変化だけでは設定の優劣を証明できません。発熱、電波の弱さ、システムのバックグラウンド処理も確認してください。

常時接続では問題なく、On Demandで再接続が繰り返される場合は、まず接続条件をシンプルにします。同じネットワークでどちらも接続に失敗する場合は、ネットワークと設定済みの構成を先に確認してください。切断状態でも同程度にバッテリーが減るなら、システムのバッテリー画面でほかのアプリの動作や電波、端末の状態も調べ、Shadowrocketの設定だけに原因を絞らないようにしましょう。

接続の異常を解決してから、省電力について検討する

現在の構成で利用できる接続履歴やログを確認し、失敗した時刻、接続先アドレス、同じエラーが繰り返されているかを調べます。以下はネットワークログに表示される可能性のあるエラーの原文です。実際の記録に該当する文言がある場合に限り、それぞれの項目を確認してください。プロトコルやログの詳細度によって表現は異なります。特定のエラーが記録されていないからといって、ネットワークに問題がないとは限りません。

エラー: connection refused

原因と対処:接続先が接続を拒否しています。ポートで待ち受けていない場合やアクセスが拒否された場合に発生することがあります。自分の設定にあるサーバーアドレスとポートが一致しているか確認し、利用中のサービス提供元にサービスの状態を確認してください。On Demandを何度も切り替えて再試行するだけでは解決しません。

エラー: i/o timeout

原因と対処:ネットワークの読み込みまたは書き込みの処理がタイムアウトしています。この文言だけではサーバー側の問題かどうか特定できません。安定したWi-Fiとモバイル通信で同じ構成をそれぞれ試し、失敗するタイミングを比べてから、アドレスの名前解決、ネットワークへの到達性、利用中のサービスの状態を確認してください。

エラーがWi-Fiとモバイル通信の切り替え時だけに集中する場合は、まずネットワークを固定して再確認します。ネットワークを固定しても失敗が続く場合は、設定項目を確認してください。ポートはすでに設定されている値に合わせます。よく使われるポートだからといって、任意に443へ変更しないでください。認証情報やトランスポートの設定が一致しない場合も、接続間隔を短くして解決することはできません。

利用状況に応じて選び、再現できる結果を残す

常時接続が必要でネットワークも安定している場合は、安定した常時接続を維持し、バックグラウンドでの大量通信や異常な再接続がないかを重点的に確認します。特定のネットワーク条件や明確な用途でのみ接続する場合は、On Demandを試し、接続範囲が実際に限定されるかを確認してください。使用頻度が低く自分で接続を管理できる場合は、手動接続のほうが状態を把握しやすいことがあります。ただし、どの方法でも一律に省電力になるとは限りません。

アプリの画面を閉じたのに、バッテリー画面でバックグラウンド動作が表示されるのはなぜですか?

アプリの画面とシステムのVPNトンネルは、同じタイミングで終了するとは限りません。まずHomeに戻って接続状態を確認し、Settings → On Demandも確認してください。画面を閉じただけで接続が停止したと判断しないでください。切断した状態と比較する場合は、先に自動接続をオフにしてから接続を停止します。

On Demandを有効にすれば、必ず消費電力が下がりますか?

必ず下がるとは限りません。条件を長時間満たしていたり、バックグラウンド通信が続いたりすると、接続が長時間維持されることがあります。条件の境界が不安定な場合は、接続が繰り返されることもあります。同じネットワークで常時接続とOn Demandの記録を取り、接続回数と端末全体のバッテリー消費を比べて判断してください。

夜間にスマートフォンを使わないときは、接続を切ったほうがよいですか?

まず、夜間に同期などの通信が接続に依存していないかを確認してください。必要がなければ、On DemandをオフにしてHomeで接続を停止し、一晩の開始時と終了時のバッテリー残量を記録します。夜間の比較では、充電、ネットワーク、同期の条件をそろえてください。

モバイル通信のほうが電力を多く消費するのは、プロトコルの選択が原因ですか?

まず電波の弱さ、移動中の通信、ネットワークの頻繁な切り替えを除外してください。同じ場所で、同じ設定済みの構成を使い、Wi-Fiとモバイル通信をそれぞれ観察します。ネットワーク条件と通信量をそろえられた場合に限り、プロトコルの設定を比較してください。プロトコル名だけで消費電力の順位を決めることはできません。

再現できる形で結果を記録します。利用したネットワーク、使用した設定済みの構成、Global Routingのモード、On Demandの有効・無効、同じ時間内の端末全体のバッテリー消費と再接続の状況を残してください。まず接続失敗と繰り返される再試行を解消してから、接続方法を選びましょう。一度のバッテリー比較だけで結論を出さないでください。

App Storeで正規アプリを確認