Shadowrocketのサブスクリプションを追加できない・サーバー一覧が空|URL形式と更新タイミングの確認ガイド

サブスクリプション追加後に解析エラーが出る、または一覧が空の場合は、URLの完全性、形式、サービス提供元の状態、更新タイミングを順に確認しましょう。

この記事の概要

利用中のサービス提供元からSubscribeリンクを取得済みで、Shadowrocketに追加できない、またはサーバーが表示されない場合に役立つ確認手順です。まずURLが最後まで正しく保存されているかを確認し、取得失敗・内容の解析失敗・空の一覧を切り分けます。最後にサービス提供元の状態と更新タイミングを確認しましょう。各手順で確認できる結果をもとに判断し、設定を何度も削除することを避けます。

まず切り分け:取得に失敗したのか、一覧が空なのか

ShadowrocketのSubscribeはサーバー情報を取得する方法のひとつであり、サーバーそのものではありません。更新では、保存済みのURLを読み込み、サービス提供元に内容をリクエストし、内容を解析して一覧に反映する処理が行われます。追加が完了したのはSubscribe項目が保存されたという意味にすぎません。Homeにサーバーが追加されていなくても、URLが正常に解析されたとは限りません。

URLを保存更新を実行内容を取得項目を解析一覧を確認

まず、起きている現象を記録しましょう。更新時に明確なエラーが表示されるか、Subscribe項目は残っているのにサーバー一覧が空か、以前使えていた項目に変化がないだけかを確認します。それぞれ確認すべき点が異なります。エラーが出る場合はURLと通信を優先して確認し、更新が完了しても空の場合はサービス提供元から実際に返された内容を確認します。以前の項目に変化がない場合は、サービス提供元がまだ新しい内容を公開していない可能性もあります。

エラー:Failed to load subscription

原因と対処:利用可能なサブスクリプション内容を取得できていません。URLが無効になっているか、現在のネットワークからアクセスできない可能性があります。まず利用中のサービス提供元から受け取ったURLとアカウントの状態を確認し、もう一度更新してください。このエラーだけを見て、プロトコルのパラメータ設定が間違っていると判断しないようにしましょう。

特定の端末だけで問題が起きる場合は、その端末のネットワークからサービス提供元のURLにアクセスできるか確認します。同じURLを複数の端末で読み込んでも同じ結果になる場合は、まずサービス提供元に問い合わせてください。認証情報を含む完全なURLを、確認のために公開ページや掲示板へ貼り付けないでください。

手順1:Subscribeリンクが完全か確認する

Homeの右上にある「+」をタップし、TypeをSubscribeに設定してから、利用中のサービス提供元から取得した完全なURLを該当欄に入力して保存します。ドメインだけを入力する、URLの一部だけをコピーする、説明文も一緒に貼り付けるといった方法では、完全なサブスクリプションURLの代わりになりません。Subscribe項目がすでにある場合は、まず保存済みのURLを確認してください。元のURLに誤りがあると分かった場合に修正し、見た目の似た項目を重複して追加しないようにします。

  1. 元のURLを取得する

    利用中のサービス提供元のアカウントページからURLをコピーし、表示名やページタイトルではなく、URL全体をコピーしたことを確認します。サブスクリプションは利用者自身のサービス設定です。クライアントの購入費用と回線サービスの料金は別々に発生します。

  2. 先頭と末尾を確認する

    https://などの完全なスキームから始まっているか、末尾のパラメータが欠けていないかを確認します。形式の例はhttps://example.com/sub?token=xxxxです。ドメインと認証情報は架空の値で、接続には使えません。

  3. 区切り文字を確認する

    クエリパラメータ内の?、&、=などの文字は、そのまま保持してください。チャットツールによる改行、コピー時の欠落、半角記号から全角記号への置き換えなどにより、サービス提供元がURLを認識するためのパラメータが変わることがあります。

  4. 保存して更新する

    Subscribe項目を保存したら、Homeで現在の画面に表示されている更新操作を使ってサブスクリプションを更新します。サーバー項目が表示されるか、エラーが出るかを確認してください。保存直後に見えている古い一覧だけで、今回の更新結果を判断しないようにしましょう。

URLにアクセス用の認証情報が含まれる場合、ドメインとパスが同じでも、パラメータが異なればサービス提供元が別のアカウントとして認識することがあります。確認時はURLの先頭と末尾、パラメータの有無を比べる程度にとどめ、認証情報全体を公開スクリーンショットに写さないでください。認証情報が漏れた可能性がある場合は、クライアント内でパラメータを適当に書き換えず、利用中のサービス提供元に相談してください。

手順2:返された内容を解析できるか確認する

URLにアクセスできても、サーバー一覧が返されるとは限りません。サービス提供元からログインページ、期限切れの案内、アクセス制限ページ、または現在のインポート方法に合わない形式のテキストが返されることがあります。この場合、通信自体は完了したように見えても、解析後に利用可能な項目が表示されないことがあります。利用中のサービス提供元が対応を明記しているShadowrocket向けの形式を確認し、任意のWebページのURLをSubscribeに使わないでください。

URL 1件
SubscribeのURLは、必要なクエリパラメータも含めて完全な状態で保存してください
結果は2通り
リクエストの失敗と、完了後に一覧が空の場合を切り分ける
確認するのは3か所
元のURL、サービス提供元からの返却内容、Homeの一覧

サービス提供元がサブスクリプション内容の確認方法を提供している場合は、アカウントページでサーバー項目が実際にあるか、URLがどのインポート形式を対象としているかを確認しましょう。「文字コードを直す」ために返却テキストの文字を手動で削除したり、項目の順番を入れ替えたり、変換方法を推測したりしないでください。内容はサービス提供元が生成しています。手を加えると今回読み込めても、次回の更新で再び使えなくなる可能性があります。

「一覧が空」という状態が、表示場所の違いによるものではないかも確認します。Configでサーバーを探すのではなく、Homeで更新後のサーバー一覧を見ているか確認してください。Global RoutingのProxy、Direct、Config、Sceneの設定は通信の処理方法に影響しますが、切り替えても空のサブスクリプションからサーバーが生成されるわけではありません。まずインポート結果を解決してから、ルーティング設定を確認しましょう。

手順3:サービス提供元の状態と更新タイミングを確認する

サブスクリプションの内容は、利用者自身のサービス提供元が管理しています。アカウントの状態変更、認証情報のリセット、URLの変更、一時的なリクエスト制限などにより、以前保存したURLから同じ内容が返されなくなることがあります。URLに誤りがなく、サービス提供元のアカウントページにも利用可能な項目が表示されていない場合は、まずサービス提供元に確認してください。返された内容が空でも、Shadowrocketがサーバー情報を自動生成することはできません。

判断のポイント:一度更新して変化がなくても、インポート失敗とは限らない

まず、サービス提供元のアカウントページとHomeの一覧を見比べます。サービス提供元が新しい項目をまだ公開していなければ、何度更新しても同じ一覧が返る可能性があります。サービス提供元側では更新済みなのにクライアントでエラーが続く場合は、URLとリクエスト結果をあらためて確認しましょう。

更新するタイミングも判断に影響します。サブスクリプションURLを変更した直後は、新しいURLを正しく保存してから該当項目を手動で更新してください。古い項目の自動更新を待っても、古いURLは新しいものに置き換わりません。サービス提供元が内容を変更した直後は、案内に従って変更が公開されたことを確認してから更新し、結果を見ます。短時間に何度も操作すると、どのURLに対するリクエストの結果か分かりにくくなります。一度に変更する項目はひとつにしましょう。

異なるネットワークで結果が変わる場合は、同じSubscribe項目の更新結果をそれぞれ記録すると、現在のネットワークのアクセス問題か、サービス提供元が返す内容の問題かを判断しやすくなります。テスト中はURLとアカウントの状態を変えないでください。ネットワーク、URL、設定を同時に変更すると、結果を単一の原因に結び付けられなくなります。

一覧が戻ったら、サブスクリプションを変更し続けず接続を確認する

Homeにサーバー項目が表示されたなら、サブスクリプションの取得と解析によって少なくとも目に見える結果が得られています。それでも接続できない場合は、サーバー設定、サービス提供元の状態、ルーティング設定を別途確認し、「一覧が空」の問題として扱い続けないようにしましょう。たとえば、Homeで選択中の項目とGlobal Routingの設定は、その後の通信に影響します。Settings → On Demandは、設定した条件を満たしたときにオンデマンド接続するかどうかを決めるもので、無効なサブスクリプションURLを修復する機能ではありません。

  1. 更新後に目的の項目が表示されていることを確認し、古いサーバーを誤って選択していないか確認します。
  2. 次にHome → Global Routingを開き、Proxy、Direct、Config、Sceneのどれが選択されているか確認し、利用目的に合わせて設定します。
  3. ネットワークの条件に応じて自動接続する場合は、Settings → On Demandで設定済みの条件を確認します。サブスクリプションのインポート問題とは分けて検証してください。

確認の順序は「URLの完全性 → 返却内容と形式 → サービス提供元の状態 → 更新結果 → 接続設定」と決めておくとよいでしょう。どの問題もクライアント内で解決できるという意味ではありません。原因がどの段階にあるかを明確にするための順序です。URLや返却内容はサービス提供元への確認が必要で、一覧に項目が表示された後の接続問題ではルーティングやサーバー設定を確認します。複数の設定を同時にリセットするより、変更前後の状態を記録したほうが原因を特定しやすくなります。

正規の入手先と基本操作を確認する

ShadowrocketはApp Storeで入手できます。開発者はShadow Launch Technology Limitedで、購入は買い切り方式です。対応端末とシステム要件はApp Storeの掲載情報をご確認ください。当サイトは公式の操作ガイドであり、サブスクリプションサービスは提供していません。初めて利用する場合は、まずアプリの情報を確認してから基本手順をお読みください。

正規アプリの確認ページへ 使い方を見る
App Storeで正規アプリを確認