目次
APK をインストールできるかは、配布元、Android バージョン、アーキテクチャで決まる
Android には似た名前の Clash クライアントが多数あり、検索結果には古いプロジェクト、再パッケージ版、現在も保守中のプロジェクトが同時に表示されることがあります。APK はプロジェクトリポジトリの Release またはプロジェクトが明示したダウンロードページから取得し、リリースノートで対応する Android バージョンを確認してください。
ファイルが arm64-v8a、armeabi-v7a、x86_64、universal に分かれている場合、近年の実機の多くは arm64-v8a、エミュレーターは x86_64 の場合があります。判別できない場合は、プロジェクトが提供する universal パッケージを使用してください。ファイルサイズが大きくなるだけです。
「パッケージの解析中に問題が発生しました」と表示されても、システム保護をすべて無効にしないでください。まずアーキテクチャ、ダウンロードの完全性、システムバージョンを確認します。
インストール前に表示される表記
| 表記 | 意味 |
|---|---|
| arm64-v8a | 近年の 64 ビット ARM スマートフォンとタブレットの多く |
| armeabi-v7a | 古い 32 ビット ARM 端末 |
| x86_64 | 一部のエミュレーターまたは少数の x86 端末 |
| universal | 複数のアーキテクチャを含み、判別できない場合に適する |
「不明なアプリのインストールを許可」は、現在のファイル取得元だけに付与する
ブラウザまたはファイルマネージャーから APK を開くと、Android はそのアプリに不明な配布元のソフトウェアをインストールする許可を求めます。対応するシステム設定を開き、現在のブラウザまたはファイルマネージャーだけを一時的に許可してください。インストール後は権限を無効にできます。
署名が一致しないと表示される場合、別の配布元から取得した同じパッケージ名のアプリが、すでに端末にある可能性が高いと考えられます。ローカル設定をバックアップし、古いアプリの正体を確認してからアンインストールするか決めてください。署名がまったく異なるパッケージを上書きしないでください。Play Protect またはメーカーのセキュリティ警告が表示された場合は、保護を恒久的に無効にせず、Release とファイルを再確認します。
サブスクリプションを更新して設定へ変換し、その設定を有効にする
Android でのサブスクリプション手順
リモートサブスクリプションを追加する
サービス提供元の Clash または Mihomo 互換 HTTPS アドレスを貼り付けます。
すぐに更新する
ステータスコード、解析エラー、更新日時を確認します。
この設定を有効にする
現在の Profile がサンプルファイルまたは古いサブスクリプションではないことを確認します。
メインのポリシーグループを展開する
ノードを一つ固定し、まず Rule モードを使います。
アプリによってはクリップボード、QRコード、URL Scheme からインポートできます。入口が異なっても、最終的には新しい更新日時、ポリシーグループ、ノードが表示される必要があります。リストにサブスクリプション名しかなく、ノードが空なら、ダウンロードまたは解析はまだ完了していません。
更新ボタンが回り続ける場合は、同じ項目を繰り返し追加しないでください。Wi-Fi とモバイルデータを一度切り替え、ログが timeout、TLS、401/403、parse error のどれかを確認します。応答がなければネットワークを、ステータスコードがあればアカウントまたは形式を調べてください。
サブスクリプションリンクには token が含まれます。チャットアプリでスマートフォンへ送った後は、完全な URL を含む公開メッセージを速やかに削除してください。グループへ投稿してしまった場合は、サービスの管理画面でアドレスをリセットします。
設定を選んだ後、Android がシステム VPN 接続を確認する
クライアントへ戻ってサービスを開始すると、Android に「接続リクエスト」などの VPN 確認が表示され、その後ステータスバーに鍵または VPN アイコンが現れます。このシステムの案内から分かるのは、現在のアプリに VPN 入口の作成が許可されたことだけであり、選択したノードが必ず使えるという意味ではありません。
通常、スマートフォンで同時に有効にできる VPN は一つだけです。別の VPN、広告ブロッカー、ファイアウォールもシステム VPN を使っていると、新しいクライアントは起動に失敗するか、既存接続を置き換える場合があります。テスト前に、ほかの VPN 型アプリを停止してください。
システムの入口が準備できたことを示す状態
- VPN の確認が、現在インストールされているクライアントから要求されている
- ステータスバーにシステム VPN アイコンが表示される
- 通知領域にクライアントのフォアグラウンドサービスが表示される
- ほかの VPN 型アプリが停止している
アプリを前面に置いたまま、最初の実アクセスを完了する
クライアントを前面に置いたままシステム VPN を開始し、ブラウザで使い慣れたサイトへアクセスします。クライアントの接続またはログ画面へ戻り、対象ドメイン、一致ルール、ノードを確認してください。遅延値が緑になっただけでは、ブラウザリクエストが設定を経由した証拠にはなりません。
VPN アイコンは表示されるが、接続記録が空
アプリ別プロキシでブラウザが除外されていないか、別の VPN が取り込んでいないか確認します。
接続に DIRECT と表示される
現在のルールが直接接続を選んでいます。設定どおりか確認してください。
接続がノードを使った後に timeout になる
別のノードを固定し、Wi-Fi とモバイルデータで比較します。
サブスクリプション画面に parse error と表示される
返された形式またはコアの互換性に対処してください。VPN 権限では修正できません。
画面ロック後、数分で切断する場合は、バッテリーとバックグラウンド制限に対処する
前面では使えるのに、画面をロックしてしばらくすると停止する場合、システムがバックグラウンドプロセスを終了した可能性があります。Android の「アプリ情報 > バッテリー」またはメーカーの対応画面で、現在のクライアントにバックグラウンド実行を許可するか、バッテリー最適化の対象外にしてください。フォアグラウンドサービスは通知を使って動作を維持するため、常駐通知も許可する必要があります。
Xiaomi、Huawei、OPPO、vivo、Samsung などでは項目名が異なり、自動起動、バックグラウンド動作、スリープ中のアプリ、バッテリー制限なしなどと表示されます。現在のプロキシクライアントだけを調整し、スマートフォン全体の省電力機能を無効にする必要はありません。変更後、画面を五〜十分ロックしてから、同じサイトでもう一度テストします。
- 通知が禁止されている
- フォアグラウンドサービスが安定して維持されない場合があります。プロキシ状態の通知を許可してください。
- バッテリーモードが制限付き
- システムがバックグラウンドでプロセスを終了する可能性があります。許可または制限なしへ変更して再テストしてください。
- クリーンアップツールがアプリを自動終了する
- 現在のクライアントを保護リストへ追加し、画面ロックのたびに終了されないようにします。
- スマートフォンの再起動後に自動接続しない
- クライアントに起動時接続の機能があるか、システムが自動起動を許可しているか確認してください。
アプリ別プロキシを有効にしたら、リストの方向を逆に選ばない
Android クライアントには通常、「選択したアプリだけをプロキシ」または「選択したアプリを除外」という二つの方向があります。方向とリストを逆に選ぶと、ブラウザ、ゲーム、メッセージアプリが接続記録にまったく入らず、ノードが故障したように見えます。
まずアプリ別機能を無効にして全体を比較し、その後もう一度有効にして対象アプリを一つか二つだけ追加します。プロキシ対象のアプリは接続記録に表示され、除外したアプリは直接接続になる必要があります。この前後結果は、リストのチェックだけを見るより確実です。
アプリ別機能の結果の読み方
| 設定 | 想定される結果 |
|---|---|
| 選択したアプリだけをプロキシ | リスト内のアプリだけが Clash に入る |
| 選択したアプリを除外 | リスト内のアプリは直接接続し、それ以外は Clash に入る |
| 機能を無効化 | システム VPN の取り込み範囲とルールの両方で決まる |
画面ロックとネットワーク切り替えは、バックグラウンド動作を確認する二つの実テスト
ノードを固定し、画面を数分ロックした後に解除して同じページへアクセスし、新しい接続記録を確認します。続いて Wi-Fi とモバイルデータを切り替え、もう一度繰り返してください。VPN アイコンが残り、フォアグラウンド通知も消えず、二回のリクエストがどちらも想定した送信経路に一致すれば、日常的なスマートフォンの状態でもクライアントは動作を続けられます。
ネットワーク切り替え後だけ停止する場合は、クライアントで再接続し、VPN インターフェースに現在のネットワークを認識させます。画面ロックのたびに終了する場合は、バッテリーと自動起動の設定へ戻ってください。サービスは動作し続けてもリクエストが timeout になる場合は、ノードと DNS に対処します。この三つの結果にはそれぞれ別の入口があり、APK を再インストールする必要はありません。
