アンドロイド自動操作ツール

Uncategorized
1.4k words

ブロックを組み合わせるだけで、アンドロイドを操作することができます。

特徴

Androidの自動化を簡単に行うことができるアプリ

  • プログラムを書く必要がなく、ブロックを組み合わせるだけで自動化が可能

  • 事前にタップしたい箇所を登録することで、画面内を自動でタップすることができる。

  • 実機はもちろんのこと、Androidエミュレーター(NoxPlayer 等)に対応

  • マウスカーソルやフォーカスを奪われないため、裏で回し続けることができる。

  • 作った自動操作ロジックは Python のみでも実行することができる。

準備

アンドロイド自動操作ツール をダウンロードする

まずは こちら からツールをダウンロードします。

ダウンロードが出来たら展開しておきます。

adb.exe をパソコンに入れる

このツールを使うには adb.exe が必須です。Noxを使う場合はNox用のadb.exeを使います。

adb.exe を使って アンドロイドからスクリーンショットを取得したり、画面をタップしたりするので必須となっています。

adb.exe は Android SDK Platform-Tools に含まれています。

なので SDK Platform-Tools をダウンロードしましょう。

SDK Platform-Tools をダウンロード

チェックを入れて、ダウンロードボタンを押すと platform-tools_r30.0.4-windows.zip がダウンロード出来ます。

platform-tools_r30.0.4-windows.zip がダウンロード

今の時期だと バージョンr30.0.4 がダウンロード出来ますが、この先バージョンが上がってもダウンロード手順は同じです。

ダウンロードしたファイルを右クリックして、展開します。

展開

展開先は分かりやすく Cドライブの直下にしました。お好みで変えて下さい。

展開先はCドライブの直下

パソコン側の設定は以上です。

アンドロイドの USBデバッグ を有効にする

次に、アンドロイドの USBデバッグ を有効にします。

アンドロイドの設定の中にある「ビルド番号」を7回タップして「開発者向けオプション」を表示させます。

ビルド番号を7回タップ

設定項目に「開発者向けオプション」が増えているので開きます。

開発者向けオプション

「開発者向けオプション」を 有効 にします。

開発者向けオプションを 有効

そのままスクロールして USBデバッグ を 有効 にします。

USBデバッグ を 有効

以上でアンドロイド側の設定は完了です。

使い方

いきなり超大作を作るのは大変なので、簡単なダンジョンの周回などを自動で出来るようにします。

ひとまず、ツールを起動させます。パイナップルのアイコンが目印です。

起動時に PC保護 が出る場合は、詳細情報 を押して

Windows によって PC が保護されました

実行で起動します。

PC保護実行

プロジェクト作成

左メニューから新規プロジェクトを作成する。

自動操作設定

右上の「自動操作設定」から設定していきます。

adb.exe の設定

PC内の adb.exe を指定する。

今回は Cドライブの直下に置いてあるので、この様に設定しました。

「C:\platform-tools_r30.0.4-windows\platform-tools\」

タッチ画像の作成

作ると言ってもスクショを撮って、トリミングして保存するだけなので簡単に作れます。

同じ要領でアンドロイドを操作しながら、クリック対象をガシガシと追加して行きましょう。

実機でスクリーンショットが撮れない場合は?

アンドロイドの USBデバッグ を見直してみて下さい。

USBモードは メディアデバイス になっているか?

USBモードは メディアデバイス

その後に USBデバッグが有効になっているか?

USBデバッグが有効になっているか?

自動操作ロジック作成

ある程度、クリック対象画像がそろったら実際にアンドロイドを自動操作させてみましょう。

今作った画像が画像ブロックに入っているので、使いたい画像をドラッグで取り出します。

画像ブロック

ワークスペースにブロックが出てきたらOKです。

ワークスペースにブロックが出てきたらOK

まだこのままだと動かないので「この画像をどうしたいのか?」処理を作っていきます。

自動操作の中にあるブロックをこの様に配置して下さい。

ブロックをこの様に配置

実行

出来たら右上の「実行」ボタンを押します。そうすると組んだブロックの処理の通りに動くはずです。

アンドロイド自動操作ツールの画面

繰り返し処理をしたい場合は?

繰り返し処理をしたい場合は、繰り返しブロックを使います。

このように繰り返しブロックで括ると、その条件の時だけ処理をしてくれます。

繰り返し処理

無限ループはこんな感じで作れます。

無限ループ

NoxPlayer を自動操作する

「adb.exe の場所を選択」で、NOX用のadb.exe を指定すると、NOXを自動操作する事が出来ます。

NOXをデフォルトでインストールした場合、「C:\Program Files\Nox\bin\adb.exe」があるので、こちらを指定してみて下さい。

おわりに

どうでしょうか?

出来るだけ使いやすくシンプルに作ってみました。

まだスクリーンショット内をタップすることしか出来ませんが、もっと機能を追加して行けたらと思っています。

要望等ありましたら、気軽に言って下さい。

https://github.com/noitaro/android-automation-tool

Python で Android ゲーム を自動操作

こんなツールもあるので、こちらも良ければ使ってみて下さい。

https://noitaro.github.io/android-auto-play-opencv/