0

我正在创建一个脚本来测试 android 4.0.4 的画廊应用程序。使用monkeyrunner。但是当我向任何相册发送触摸事件时,它会选择相册而不是打开它。以下代码适用于 Andorid View 客户端:

vc=ViewClient(device,serialNo)
firstAlbum = vc.findViewById('id/no_id/1')
firstAlbum.touch(MonkeyDevice.DOWN_AND_UP)

下面的代码是使用monkeydevice触摸事件实现的。

device.touch(x,y,MonkeyDevice.DOWN_AND_UP)
4

1 回答 1

0

这是 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')
于 2012-12-13T13:34:54.073 回答