また会社で知ったこと。
Androidにはinputコマンドというコマンドがあり、それに引数を渡すことで任意のキーコードを処理させることができます。
たとえば、adbからなら
adb shell input keyevent 3
というコマンドを送信することで、端末のホームキーを押下したのと同じ効果を得ることができます(3はホームキーのキーコード。オプションのkeyeventは、第二引数がキーコードの数値であることを示す値)。
なお、このinputコマンドはもちろんアプリから実行することもできて、
Runtime.getRuntime().exec("input keyevent 3");
とやれば、アプリからでもinputコマンドが実行できます。
他に任意のキーイベントを送るのはInputMethodService(要するにIME)の持っているメソッドしかないみたいなので、便利かも*1。
まあ、デバッグのお供に使うのが順当かもしれませんけどね。
ところで、キーの入力ができるので、あとはフリック操作ができれば完璧だと思うのですが、そんなコマンドはないんですかね。
*1:ちなみにこのコマンドを見つけたときはInputMethodService.sendDownUpKeyEvents()メソッドとかを必死にいじり回していたとき。わ、わたしの二日間の努力はいったい…