在android调试桥中模拟触摸,按住,移动

时间:2014-06-30 20:42:18

标签: android androidviewclient adb

而不是在Android调试桥或AndroidViewClient中使用dragswipe命令,如下所示:

device.drag((600,800),(600,1200), 1000) 
device.shell('input touchscreen swipe 600 800 600 1200 1000') 

有没有办法模拟以下内容?

1. press down on some coordinates (eventType=DOWN)
2. sleep 2 seconds (i.e. keep holding there)
3. move to some other coordinates
2. sleep 2 seconds (i.e. keep holding there)
5. release (eventType=UP)

基本上,你触摸,在那里按住几秒钟,拖动并保持在那里几秒钟,然后松开垫。

1 个答案:

答案 0 :(得分:0)

如果您查看AdbClient.longPress(),您会看到如何为某些键发送长按事件:

    if name in KEY_MAP:
        self.shell('sendevent %s 1 %d 1' % (dev, KEY_MAP[name]))
        self.shell('sendevent %s 0 0 0' % dev)
        time.sleep(duration)
        self.shell('sendevent %s 1 %d 0' % (dev, KEY_MAP[name]))
        self.shell('sendevent %s 0 0 0' % dev)

您可以为您的案件做类似的事情。 要了解您应该编写的内容,请执行您提到的同一组事件,并使用getevent进行分析。