検索

デバイス

BlueStacks の ADB 接続とポート設定: MAS 向け

BlueStacks 5 で ADB を有効にしてポートを確認し、Macro Automation Studio に接続して、Windows と Mac の device not found や offline エラーを直します。

  • Windows
  • Mac
  • エミュレータ
  • Studio
  • Python SDK
初級 更新日 約12分で読めます
このページの内容
  1. 始める前に
  2. 1. BlueStacks をインストールする
  3. 2. 推奨設定
  4. 3. BlueStacks 5 で ADB を有効にする
  5. 4. BlueStacks の ADB ポートと MAS のスキャン方法
  6. 5. MAS で BlueStacks を ADB 接続する
  7. BlueStacks でのマクロ
  8. 複数の BlueStacks インスタンス
  9. トラブルシューティング
  10. BlueStacks 5 で ADB を有効にする
  11. ADB ポートを確認する、または変更する
  12. ADB device not found
  13. デバイスが offline と表示される
  14. Mac での BlueStacks ADB
  15. Python から操作する

このガイドでは、BlueStacks を ADB 接続で Macro Automation Studio (MAS) につなぐ方法を説明します: ADB を有効にし、ADB ポートを確認し、インスタンスをデバイスとして追加します。Windows の BlueStacks 5 と Apple Silicon Mac 向けの BlueStacks ビルドを扱い、最後によくあるエラーをまとめます。

始める前に

  • Windows 10 か 11、または Apple Silicon Mac に MAS がインストール済みでサインインしていること。MAS はトライアル向けに無料でダウンロードできます。ダウンロードページ から入手してください。
  • bluestacks.com から BlueStacks をインストールし、1 度起動してあること。
  • インスタンスが Android のホーム画面まで完全に起動していること。
  • 自動化したいアプリが BlueStacks 内にインストールされ、サインイン済みであること。

1. BlueStacks をインストールする

  1. ベンダーサイトから BlueStacks 5 をダウンロードし、インストーラーを実行します。
  2. BlueStacks を起動し、ホーム画面を待ちます。
  3. MAS にデバイスを追加する前に、自動化したいアプリをインストールしてサインインします。
  1. Apple Silicon 向けビルドの BlueStacks Air を bluestacks.com/mac からダウンロードします。
  2. DMG を開き、BlueStacksアプリケーション に移動します。
  3. アプリケーションから起動し、ホーム画面を待ちます。
BlueStacks のダウンロードとインストール画面
現在の BlueStacks 5 ビルドをインストールし、初回起動を終わらせます。

2. 推奨設定

MAS はテンプレート画像をピクセル単位で照合するので、テンプレートを取り込んだ後にディスプレイを変えてはいけません。サイドツールバーの歯車アイコンから 設定 を開き、次のように設定します:

タブ設定
パフォーマンスCPU 割り当て2 コア。開発中はもっと多くても構いません
パフォーマンスメモリ割り当て4 GB 以上 (可能なら)
ディスプレイ解像度縦向き、540 x 960
ディスプレイピクセル密度240 DPI

変更を保存 をクリックし、BlueStacks に求められたらインスタンスを再起動します。MAS の基準に合わせて書かれたマクロは 540x960240 DPI を前提とします。自分で書くマクロは、Asset Lab で取り込んだ解像度を前提とします。実行がもたつく場合は、バックグラウンドのアプリを閉じ、インスタンスにコアとメモリを多めに割り当ててください。

BlueStacks のパフォーマンスとディスプレイ設定
安定した MAS インスタンスのためのパフォーマンスとディスプレイの設定。

3. BlueStacks 5 で ADB を有効にする

BlueStacks は ADB がオフの状態で出荷されます。MAS にはオンが必要です。

  1. サイドツールバーの歯車アイコンをクリックして 設定 を開きます。
  2. 詳細 タブをクリックします。
  3. Android Debug Bridge をオンにします。
  4. 変更を保存 をクリックします。
  5. トグルの下に表示されるアドレス (例: 127.0.0.1:5555) を控えます。コロンの後の数字が ADB ポートです。最初のインスタンスは通常 5555 になります。下のスクリーンショットでは 5625 です。
  1. サイドツールバーの歯車アイコンか、上部バーのメニューアイコンから 設定 を開きます。
  2. Android Debug Bridge のオプションを探します。ベンダーの BlueStacks Air 設定ガイドには、パフォーマンス、ディスプレイ、グラフィック、環境設定、情報が載っており、ADB のトグルはありません。古い macOS 向け BlueStacks ビルドには環境設定にありました。
  3. お使いのビルドにオプションがあれば、オンにして保存し、127.0.0.1 の後のポートを控えます。
  4. ない場合、MAS はこのビルドに接続できません。Mac で ADB を公開する別のエミュレータか、クラウドデバイス を使ってください。
BlueStacks の ADB 有効化画面とローカルポート
Android Debug Bridge をオンにした詳細タブ。ここではポートは 5625 です。

4. BlueStacks の ADB ポートと MAS のスキャン方法

MAS はエミュレータを検出するために adb devices を実行しません。起動中のプロセスをスキャンし、次のすべてを満たすポートを残します:

  • プロセス名に hd-playerbluestacks が含まれる。
  • ポートが 5555 から 8500 の間にある。
  • ソケットが 127.0.0.10.0.0.0、またはすべてのインターフェイスで待ち受けている。

該当するポートは 新しいデバイスを追加 ダイアログに Bluestacks のラベル付きで表示されます (例: 5555 - Bluestacks)。MAS はデバイスグループを開いたときと、更新 をクリックするたびにスキャンします。BlueStacks のインスタンスはそれぞれ固有のポートで待ち受けるので、2 つのインスタンスは 2 つの項目になります。

5. MAS で BlueStacks を ADB 接続する

  1. サイドバーで デバイスグループ を開き、グループを開くか作成します。
  2. デバイスを追加 をクリックします。
  3. 50 文字以内の デバイス名 を入力します。
  4. ポート で、このインスタンスの Bluestacks 項目を選びます。一覧が空なら 更新 をクリックします。
  5. BlueStacks が MAS の一覧にないポートを表示している場合は、カスタムポート を選んで入力します。MAS は 1024 から 65535 を受け付けます。
  6. 必要なら 起動時マクロ を選びます。
  7. デバイスを追加 をクリックし、デバイスカードの 開始 をクリックします。

カードは Connecting、次に Running と表示されます。MAS は独自の adb サーバーを起動し、127.0.0.1:<port> の古い項目を削除し、それに対して adb connect を実行します。

BlueStacks でのマクロ

BlueStacks 自身のマクロレコーダーは、固定座標でタップを再生します。MAS のマクロは、まず画面を見る Python スクリプトです: テンプレートマッチングでボタンを見つけ、OCR で文字を読み、リトライで遅い読み込みやポップアップを吸収します。はじめに で最初のマクロを実行し、画像認識マクロ で録画したルーチンを画面を認識するものに作り直し、スケジューラー で毎日、毎週、毎月実行します。

複数の BlueStacks インスタンス

マルチインスタンスマネージャー で作ったインスタンスは、それぞれ固有の ADB ポートで待ち受けます。同じデバイスグループに別々のデバイスとして追加し、それぞれにマクロと設定プロファイルを与え、グループの すべて開始すべて停止 を使います。デバイスごとの引数とプロキシについては デバイスグループ を参照してください。

トラブルシューティング

BlueStacks 5 で ADB を有効にする

MAS の ポート 一覧が空で、adb connect 127.0.0.1:5555 が「cannot connect」か「connection refused」と答えます。ADB がオフです。設定 を開き、詳細 をクリックし、Android Debug Bridge をオンにして 変更を保存 をクリックし、インスタンスを再起動してから、新しいデバイスを追加更新 をクリックします。詳細 タブにそのトグルがない場合は、ベンダーサイトから現在の BlueStacks 5 をインストールしてください。

ADB ポートを確認する、または変更する

ポートは Android Debug Bridge トグルの下に 127.0.0.1:<port> として表示されます。BlueStacks は起動時にポートを割り当て、5555 が使用中なら別のポートに移るため、インスタンスの作成、複製、削除の後に変わることがあります。ベンダーの ADB ガイドには手動で設定する欄の記載はありません。変わったときは、MAS のカードで デバイスを編集 をクリックして新しいポートを選びます。インスタンスを同じ順番で起動すると、ポートは安定します。

ADB device not found

カードが「Failed to start device」で Error になる、ログに「unable to connect to device」と出る、またはスクリプトが DeviceNotConnectedError を送出します。

  • インスタンスがまだ起動中です。ホーム画面を待ってから、もう一度 開始 をクリックします。
  • カードのポートが BlueStacks の表示するポートと違います。デバイスを編集 で直します。
  • アップデートで ADB が再びオフになりました。詳細 タブを確認します。
  • ターミナルで adb connect 127.0.0.1:<port> を実行します。「connected to」なら MAS も接続できます。

デバイスが offline と表示される

adb devices127.0.0.1:<port> offline と表示され、コマンドが固まります。インスタンス内の adb デーモンが応答しなくなっています。原因は通常、スリープ、アップデート、またはマシン上の 2 つ目の adb サーバーです。カードの 停止 をクリックし、インスタンスを再起動し、独自の adb サーバーを動かす他のツールを閉じてから 開始 をクリックします。MAS は最初から接続し直します。それでも offline のままなら、MAS を再起動して adb サーバーをまっさらな状態で立ち上げます。その他の対処は ADB トラブルシューティング にあります。

Mac での BlueStacks ADB

Mac では 2 点が異なります。第一に、MAS には adb バイナリが必要です: アプリバンドル内、次に PATH、その次に Homebrew のフォルダーを探します。MAS が「ADB executable not found. Please install ADB using your package manager」と表示したら、Homebrew で adb をインストールして MAS を再起動します:

bash
brew install android-platform-tools

第二に、MAS は常に 127.0.0.1 に接続するので、BlueStacks は同じ Mac で動き、ADB を公開している必要があります。BlueStacks Air は Apple Silicon 向けの唯一のビルドで、公開されている設定に ADB のトグルはありません。それがないと、MAS は操作できません。

Python から操作する

カードが Running の状態で、マクロの src/app.pymas パッケージを通して BlueStacks を操作します。ポートは MAS が選ぶので、スクリプトがポートを参照することはありません。

python
import mas

size = mas.get_screen_size()
mas.log(f"BlueStacks screen is {size.width}x{size.height}")

match = mas.find_object_retry(1234, total_tries=3, time_sleep=2.0)
if match:
    mas.click(match.x, match.y)

すべての名前空間は SDK 概要 を、完全な最初のスクリプトは Python から Android エミュレータを操作する をお読みください。

次のステップ

関連ページ

このページは役に立ちましたか?

質問がありますか? Discordで質問する