我有一個登錄應用程序,我想要做的是午餐應用程序 ,然後與應用程序交互,發送用戶名和密碼。如何使用Monkeyrunner向Android模擬器發送命令?
這個腳本有什麼問題?
# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
# Connects to the current device, returning a MonkeyDevice object
device = MonkeyRunner.waitForConnection()
# Installs the Android package.
device.installPackage('myproject/bin/LoginApp.apk')
# Runs an activity in the application
device.startActivity(component='com.example.android.myapplication.MainActivity')
# Write username and password
device.press('KEYCODE_BUTTON_SELECT','DOWN_AND_UP')
device.press('KEYCODE_U','DOWN_AND_UP')
device.press('KEYCODE_S','DOWN_AND_UP')
device.press('KEYCODE_E','DOWN_AND_UP')
device.press('KEYCODE_R','DOWN_AND_UP')
device.press('KEYCODE_ENTER','DOWN_AND_UP')
device.press('KEYCODE_P','DOWN_AND_UP')
device.press('KEYCODE_A','DOWN_AND_UP')
device.press('KEYCODE_S','DOWN_AND_UP')
device.press('KEYCODE_S','DOWN_AND_UP')
device.press('KEYCODE_ENTER','DOWN_AND_UP')
device.press('KEYCODE_ENTER','DOWN_AND_UP')
我也嘗試過功能類型,如device.type('user')
。 有時運作良好,但有時不會,我不知道爲什麼。
也許,鍵盤的焦點在搜索欄或其他地方。 在腳本中,當我按下選擇按鈕時,我想要選擇文本框來輸入用戶名。
我想到的另一個想法是,我必須等到活動開始/加載正確後再發送命令進行交互。我怎樣才能做到這一點?