Shadowrocketのバックグラウンド電池消費を調べる|On Demandの設定方法

Shadowrocketのバックグラウンド接続とOn Demandの電池消費を比較。使い方に合わせた設定手順と、iPhoneで電池使用状況を確認する方法を紹介します。

この記事の要点

ShadowrocketのOn Demandは、条件に応じてVPN接続を自動で確立する機能で、電池消費を一律に抑える設定ではありません。画面ロック中の電池減少、切断後の自動再接続、ネットワーク切り替え時の接続反復に困っている方に向けて、まずiPhoneのバッテリー履歴を確認し、次に条件を設定します。同じ条件で比較し、接続の維持、実際の通信、接続失敗後の再試行が与える影響を切り分けます。接続テストには、利用者自身が用意したサーバー設定またはサブスクリプションが必要です。

1. バックグラウンド接続・通信量・自動接続を切り分ける

Shadowrocketを画面から閉じても、システムのVPNトンネルが停止したとは限りません。トンネルはシステムのネットワーク拡張機能によって通信を処理し続けることがあります。アプリが画面に表示されていないだけでは、動作中かどうか判断できません。一方、ステータスバーにVPNのアイコンが表示されていても、常に大量の通信が発生しているわけではありません。待機中の接続と、ダウンロードを続けている状態の電池消費は分けて考えましょう。

On Demandは、設定した条件に基づいてシステムが自動接続するかどうかを判断する機能です。「特定のアプリを開いたときだけ接続する」機能ではなく、画面をロックするたびに切断されることを保証するものでもありません。バックグラウンド同期、ネットワークの変化、条件に一致するネットワークアクセスなどが接続動作と同時に発生することがあります。実際のトリガーは、現在のルールとシステムの動作によって異なります。

ネットワーク条件が変化 システムが条件を確認 トンネルを確立 ネットワークリクエストを処理 接続結果を記録

接続を維持するにはセッションの保持が必要になる場合があり、再接続ではDNSクエリ、通信接続、暗号化ハンドシェイクが発生することがあります。On Demandによって短時間に接続を繰り返すようになると、待機中の維持コストを節約できても、再接続のコストが上回る可能性があります。まず「接続が安定しているか」を確認してから、「自動接続が必要か」を検討しましょう。

2. iPhoneのバッテリー履歴で基準を確認する

iPhoneの「設定 → バッテリー」を開き、システムに表示される期間とアクティビティの詳細を確認して、電池の減りが気になる時間帯を選びます。グラフや絞り込み項目はシステムのバージョンによって異なる場合があるため、実際の画面表示を確認してください。電池残量の低下が、画面の使用、バックグラウンドアクティビティ、ほかのアプリによる大量の通信と重なっているかを見ます。アプリ一覧の割合だけで判断しないようにしましょう。

3項目
電池残量の変化、画面の使用状況、ネットワークの種類を記録
1項目
1回のテストで変更する設定は1つだけ。ほかの条件はそろえる
60分
1回の観察時間の目安であり、節電効果を保証するものではありません
  1. 開始時の記録。時刻、電池残量、Wi-Fiまたはモバイル通信、電波状況、充電中かどうかを記録します。テスト中は充電やシステムアップデートなど、負荷の高い作業を避けてください。
  2. 使い方をそろえる。画面ロック中をテストするなら、テスト中はロックしたままにします。ウェブ閲覧をテストするなら、内容や操作をできるだけそろえます。動画を再生したときと待機中の結果を比較しないでください。
  3. 対象時間帯を確認。バッテリーグラフでアクティビティの発生時刻を確認し、画面使用中かバックグラウンド動作中かを区別します。アプリの使用状況に表示される割合は、通常、選択した時間帯の電池消費に占める比率であり、電池残量がその割合分だけ減ったことを示すものではありません。
  4. 繰り返し観察。短時間の電池残量表示には計測の粒度による限界があります。1〜2ポイント程度の差だけでは設定の効果を判断できません。似た条件でテストを繰り返し、接続履歴と合わせて確認してください。

結論:時間帯をそろえてから原因を判断

電池の減りが気になる時間帯と、接続の反復、リクエストの失敗、継続的な通信が発生した時間帯が重なる場合に限り、その観点から調べる価値があります。バックグラウンド使用状況の順位だけでは、On Demandが電池消費の原因とは断定できません。

3. Settings → On Demandの設定と確認手順

変更する前にHomeで現在使用中のサーバーを確認し、Configで有効な設定を記録します。こうしておけば、調査中にサーバー、ルーティングモード、自動接続条件を同時に変更して、どの変更が結果に影響したのかわからなくなる事態を防げます。サブスクリプションの内容や接続パラメータに疑問がある場合は、ご自身のサービス提供元に確認してください。

  1. 設定を開く。Shadowrocketを開き、Settings → On Demandに進んで、有効になっているか、どの条件が設定されているかを確認します。元の状態を記録しておけば、あとで元に戻せます。
  2. まず自動接続をオフにして比較。一時的にOn Demandをオフにし、Homeに戻って接続を手動で切断します。トンネル経由の通信が不要なテスト時間帯に、自動接続が再び発生するか確認してください。
  3. 対象のネットワークを指定。ネットワーク環境に応じて自動接続したい場合は、On Demandを有効にし、画面で実際に選択できるネットワークの種類や一致条件を設定します。SSID条件が表示される場合は、端末が接続しているWi-Fiの名前を入力します。空白や大文字・小文字にも注意してください。
  4. 条件は1つから試す。まず1つの条件で動作を確認し、重複する可能性のある条件を一度に複数追加しないでください。「制限を設定していない」状態を「接続がトリガーされない」と決めつけず、画面の説明と実際の接続結果で確認します。
  5. ネットワークへの接続時と離脱時をテスト。対象ネットワークへの接続時、離脱時、画面ロック後に再び使い始めたときのそれぞれを確認します。その都度Homeで接続状態を確認してください。iPhoneの「設定 → 一般 → VPNとデバイス管理 → VPN」でシステム設定を確認する場合は、別の用途で使っている設定を誤って変更しないよう注意してください。
  6. 切断手順を確認。接続を切った状態に保ちたい場合は、まずOn Demandをオフにしてから、Homeで接続を切断します。Homeの接続スイッチだけを操作すると、次に条件を満たしたとき再接続する可能性があります。

4. 常時接続・On Demand・手動接続を使い分ける

設定の目的は、実際の通信ニーズを満たしながら、不要な接続の変化を減らすことです。トンネルを長時間使う方は、接続を何度も作り直すより安定した接続を維持するほうが適している場合があります。短時間しか使わない方は、手動接続のほうが管理しやすいでしょう。On Demandは接続条件が明確な場合に適しており、接続の用途を見極める代わりにはなりません。

利用シーン テストできる設定 優先して確認すること
一日を通してトンネル経由のリソースにアクセスする 接続を安定して維持し、現在のOn Demand設定と比較する 通信が続いているか、接続失敗後に再試行しているか、接続を頻繁に作り直しているか
毎日、短時間だけ使う On Demandをオフにし、必要なときにHomeから手動で接続する 使い終わって切断したあと、切断状態が保たれるか
特定のネットワーク環境でのみ使う On Demandで実際に利用できるネットワーク条件を使う 対象環境への接続時と離脱時に、想定どおり動作するか
Wi-Fiとモバイル通信を頻繁に切り替える まず条件の重複を減らし、サーバーは変更しない ネットワークの切り替えと接続失敗のタイミングが重なるか

電波が弱い場合、Wi-Fiのポータル認証が完了していない場合、ネットワークが切り替わる場合は、接続を確立できないことがあります。たとえば公衆Wi-Fiに接続した直後は、ネットワークに必要な認証を済ませてからトンネルを確認してください。ネットワーク自体が利用可能になる前に、スイッチを何度も切り替えて解決しようとしないでください。モバイル通信の電波が弱いときの電池消費は、無線通信そのものが原因の可能性もあり、Shadowrocketだけに起因するとは限りません。

5. 接続を繰り返すときは、エラーを確認してから設定を変更

接続履歴に失敗が繰り返し記録されている場合は、まずエラーの発生時刻、使用ネットワーク、接続先サーバーを記録し、バッテリーグラフと照らし合わせます。以下はネットワーク診断でよく見られる英語のエラーです。実際の表示では大文字・小文字や接頭辞、追加情報が異なることがあるため、端末に表示された原文を省略せずに記録してください。これらは原因を調べる手がかりであり、1件の記録だけで原因を断定することはできません。

エラー:Connection refused

原因:通常、接続先アドレスのポートで接続が拒否されたことを示します。サービスが待ち受けていない、ポートの設定が合っていない、またはネットワーク機器が接続を拒否している可能性があります。

対処:現在の設定でサーバーアドレス、ポート、プロトコルを確認し、サービスの稼働状況を契約先に確認してください。エラーを消すためだけにポートを443へ変更しないでください。

エラー:Operation timed out

原因:制限時間内に処理が完了しなかった状態です。ネットワークに到達できない、パケットロスがある、接続先が応答しない、通信経路が制限されているなどの可能性があります。

対処:設定は変えず、ご自身が利用できる別のネットワークに切り替えて再テストします。特定のネットワークでのみ失敗する場合は、まずそのネットワークを確認し、その後サーバーを確認してください。

エラー:Network is unreachable

原因:現在の接続経路を利用できない状態です。ネットワークインターフェースの切り替え中や、基盤となるネットワークが復旧していないときによく発生します。

対処:まず端末が通常どおりインターネットに接続できることを確認し、ネットワークが安定してから再試行します。ネットワーク切り替え中にOn Demandが何度も動作していないかも確認してください。

一度の失敗後に接続が復旧すること自体は、必ずしも異常ではありません。注目すべきなのは、有効な通信がない状態でも、失敗と再接続が短時間に繰り返されることです。DNS、サーバー、プロトコル、On Demandを同時に変更すると、現象が解消しても原因を特定できなくなります。認証情報やサブスクリプションURLを含む記録を共有する場合は、事前に機密情報を隠してください。

6. Global Routingとルールは通信経路を変えるが、切断の代わりにはならない

HomeでGlobal Routingを確認するときは、ルーティングの方針とトンネルのオン・オフを区別してください。Directを選ぶとリクエストの送信方法が変わりますが、システムVPNが停止するわけではありません。Configを選ぶと、現在の設定に従ってリクエストが処理されます。On Demandが扱うのは自動接続の条件です。役割が異なるため、「Directを選択したからバックグラウンドのトンネルも停止した」と判断することはできません。

特定のウェブサイトだけをプロキシ経由にしたい場合は、バックアップを取ってからConfigのルールと順序を確認します。以下は構文の説明のみです。example.comは例示用のドメインで、PROXYは実際の設定で利用可能なポリシーを指している必要があります。この例は汎用的な節電設定ではなく、現在使用中の設定全体にそのまま上書きしないでください。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT

同様に、節電だけを目的にShadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardをむやみに変更するべきではありません。結果はプロトコル、通信方式、サーバーの品質、現在のネットワークに左右され、サーバー側も該当する設定に対応している必要があります。プロトコル名だけから、特定のネットワーク環境におけるiPhoneの電池消費を予測することはできません。

7. 再現できる比較結果をもとに原因を絞り込む

調査は「完全に切断」「手動で安定接続」「条件を絞ったOn Demand」の3回に分けるのがおすすめです。各回の時間と利用内容をそろえ、同じネットワーク、サーバー、ルーティング設定を使用します。この回数はテスト方法を示すものであり、日常的に接続を何度も切り替えることを求めるものではありません。

  1. 完全切断でテスト。On Demandをオフにして接続を切り、この利用シーンでの基本的な電池消費を記録します。この状態でも明らかな異常がある場合は、画面の使用状況、ほかのアプリ、電波状況、システムのタスクを引き続き確認してください。
  2. 安定接続でテスト。On Demandをオフにしたまま、手動で接続します。同じ通信量で、異常な発熱、エラーの反復、バックグラウンドでの大量通信が発生しないか観察してください。
  3. 自動接続でテスト。動作確認済みの条件を1つだけ有効にし、接続回数が明らかに増えるか、その増加が電池残量の減少が集中した時間帯と重なるかを確認します。
  4. 記録を残す。各テストの開始・終了時の電池残量と時刻、接続状態、エラーの原文を保存します。さらに調査が必要な場合、「バックグラウンドで電池を消費する」という説明だけよりも、これらの情報が役立ちます。

結論:実際の使い方に合う自動接続条件だけを残す

自動接続のテストで接続の再確立が頻発し、手動接続では問題がない場合は、まずOn Demandの条件を見直します。どちらの接続テストでも問題がある場合は、ネットワーク、サーバー、継続的なリクエストを優先して確認してください。電池消費の変化を、毎回同じ設定のせいだと決めつけないようにしましょう。

最終的な設定では、使いやすさと動作の確認しやすさの両方が必要です。接続が必要なときに接続でき、不要なときには切断状態を保ち、ネットワーク切り替え後に失敗が続かないことを確認してください。一連のテストを終えてから、常時接続、On Demand、手動接続のどれを使うか決めましょう。1回分のバッテリー残量だけで選ぶべきではありません。

App Storeの正規入手先 デベロッパとアプリIDを確認