私はこの質問にいくらかの専門知識を持っています。私の見解では、2つのオプションがあります。
- ローカルモンキースクリプトを作成して、デバイスのシェルから実行できます。
- TCP / IP(WiFi)を介してデバイスを接続し、バッテリー消費のスナップショットを保存できます。
編集
デバイスからmonkeyスクリプトを実行するには、次のコマンドを実行する必要があります(smthを混乱させない場合)。
adb shell monkey -v -f /mnt/sdcard/script.txt
この場合のスクリプトは、少し変わったsintaxを使用します(ほんの一例です。これは、ジンジャーブレッドを使用したNexus Sのデフォルトの連絡先アプリケーションのスクリプトです)。
# Start of Script
type= user
count= 150
speed= 1.0
start data >>
#launch browser com.android.contacts/.DialtactsContactsEntryActivity
LaunchActivity(com.android.contacts, com.android.contacts.DialtactsContactsEntryActivity)
UserWait(4000)
#go to favorites tab
Tap(415, 85)
UserWait(3000)
#go to phone tab
Tap(60, 85)
UserWait(3000)
#calllog
Tap(175,90)
UserWait(2000)
#contacts
Tap(300,90)
UserWait(4000)
#create new contact
DispatchPress(KEYCODE_MENU)
UserWait(2000)
Tap(360,650)
UserWait(4000)
#go name
Tap(200,340)
UserWait(8000)
DispatchString(123)
UserWait(5000)
Tap(125,385)
#launching launcher and exit com.android.launcher/com.android.launcher2.Launcher
UserWait(10000)
LaunchActivity(com.android.launcher, com.android.launcher2.Launcher)
quit
私の場合、2番目のアプローチを使用する方が簡単です(エラーが発生しやすくなります)。WiFi経由でデバイスに接続できます(したがって、USBケーブルが取り外されます)。このためにあなたはすべきです:
- デバイスをUSB経由で接続し、実行します
adb tcpip <port_num>
- 次に、デバイスをWiFiネットワークに接続します
- 次に、(ネットワークにも接続されている)コンピューターで実行します。
adb connect <phone_ip_addres>:<port_num>
これで、monkeyrunnerの標準的な方法を使用してWiFi経由でmonkeyrunnerコマンドを実行できます(monkeyrunner <script_name>.py
)