ブロックを組み合わせるだけで、アンドロイドを操作することができます。
特徴
Androidの自動化を簡単に行うことができるアプリ
プログラムを書く必要がなく、ブロックを組み合わせるだけで自動化が可能
事前にタップしたい箇所を登録することで、画面内を自動でタップすることができる。
実機はもちろんのこと、Androidエミュレーター(NoxPlayer 等)に対応
マウスカーソルやフォーカスを奪われないため、裏で回し続けることができる。
作った自動操作ロジックは Python のみでも実行することができる。
準備
アンドロイド自動操作ツール をダウンロードする
まずは こちら からツールをダウンロードします。
ダウンロードが出来たら展開しておきます。
adb.exe をパソコンに入れる
このツールを使うには adb.exe が必須です。Noxを使う場合はNox用のadb.exeを使います。
adb.exe を使って アンドロイドからスクリーンショットを取得したり、画面をタップしたりするので必須となっています。
adb.exe は Android SDK Platform-Tools に含まれています。
なので SDK Platform-Tools をダウンロードしましょう。
チェックを入れて、ダウンロードボタンを押すと platform-tools_r30.0.4-windows.zip がダウンロード出来ます。
今の時期だと バージョンr30.0.4 がダウンロード出来ますが、この先バージョンが上がってもダウンロード手順は同じです。
ダウンロードしたファイルを右クリックして、展開します。
展開先は分かりやすく Cドライブの直下にしました。お好みで変えて下さい。
パソコン側の設定は以上です。
アンドロイドの USBデバッグ を有効にする
次に、アンドロイドの USBデバッグ を有効にします。
アンドロイドの設定の中にある「ビルド番号」を7回タップして「開発者向けオプション」を表示させます。
設定項目に「開発者向けオプション」が増えているので開きます。
「開発者向けオプション」を 有効 にします。
そのままスクロールして USBデバッグ を 有効 にします。
以上でアンドロイド側の設定は完了です。
使い方
いきなり超大作を作るのは大変なので、簡単なダンジョンの周回などを自動で出来るようにします。
ひとまず、ツールを起動させます。パイナップルのアイコンが目印です。
起動時に PC保護 が出る場合は、詳細情報 を押して
実行で起動します。
プロジェクト作成
左メニューから新規プロジェクトを作成する。
自動操作設定
右上の「自動操作設定」から設定していきます。
adb.exe の設定
PC内の adb.exe を指定する。
今回は Cドライブの直下に置いてあるので、この様に設定しました。
「C:\platform-tools_r30.0.4-windows\platform-tools\」
タッチ画像の作成
作ると言ってもスクショを撮って、トリミングして保存するだけなので簡単に作れます。
同じ要領でアンドロイドを操作しながら、クリック対象をガシガシと追加して行きましょう。
実機でスクリーンショットが撮れない場合は?
アンドロイドの USBデバッグ を見直してみて下さい。
USBモードは メディアデバイス になっているか?
その後に USBデバッグが有効になっているか?
自動操作ロジック作成
ある程度、クリック対象画像がそろったら実際にアンドロイドを自動操作させてみましょう。
今作った画像が画像ブロックに入っているので、使いたい画像をドラッグで取り出します。
ワークスペースにブロックが出てきたら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 ゲーム を自動操作
こんなツールもあるので、こちらも良ければ使ってみて下さい。