我正在创建一个脚本来测试android 4.0.4的图库应用程序。但是当我向任何相册发送触摸事件时,它会选择相册而不是打开它。以下代码适用于Andorid View客户端:
vc=ViewClient(device,serialNo)
firstAlbum = vc.findViewById('id/no_id/1')
firstAlbum.touch(MonkeyDevice.DOWN_AND_UP)
下面的代码是使用猴子设备触摸事件实现的。
device.touch(x,y,MonkeyDevice.DOWN_AND_UP)
这是MonkeyRunner的局限性,它不能处理非交互式项目。对于此问题,错误已记录在谷歌群组 http://code.google.com/p/android/issues/detail?id=19452
我能够通过制作包含以下命令的脚本来打开相册:
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 2 0 -1000
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 2 1 -1000
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 2 0 500
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 2 1 500
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 2 0 80
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 2 1 80
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 1 272 1
adb shell sendevent /dev/input/event2 0 0 0
adb shell sendevent /dev/input/event2 1 272 0
adb shell sendevent /dev/input/event2 0 0 0
运行库活动后,您的 Monkeyrunner 脚本应包含以下行:
try:
subprocess.Popen(['bash', '-c', '. .Script_name.sh'])
except:
raise Exception('Could not open the File: script_name.sh')