前の記事で、ADB Shellを使ったテキストの流し込み方法を説明しましたが、今回は、HOMEキーやBACKキーなどを、PCからキーイベントを起こす方法の紹介です。自動化による検証を考えている場合だけでなく、OSにAndroidを使った入力機能が乏しい特殊な機器のデバッグなどで役立つので、知っておいて損はありません。
ポイント
adb shell input keyevent KEYCODE_xxx
前回と異なり、text の部分を keyevent に変更し、そのあとキーコードとなる定義名か数値を記載します。
定義値
最初から利用できる定義は、https://developer.android.com/reference/android/view/KeyEvent に記載があります。
キーボードのキーだけでなく、HOMEキーやBACKキーなどスマホでよく利用するボタンに割り当てられているキーだけでなく、Android TVに関するキーや、日本語に関するものもあるのは面白いですね。いくつか例を挙げておきます。
| 定義値 | 説明 |
|---|---|
| KEYCODE_HOME | ホーム キー |
| KEYCODE_BACK | バック(戻る)キー |
| KEYCODE_CAMERA | カメラキー |
| KEYCODE_COPY | コピーキー |
| KEYCODE_PASTE | ペーストキー |
| KEYCODE_POWER | 電源ボタン (起動状態ならスリープ、スリープ中なら復帰) |
| KEYCODE_SLEEP | スリープ (スリープ中に再実行しても何も起きない) |
| KEYCODE_WAKEUP | スリープ解除 (起動状態で再実行しても何も起きない) |

