Is it possible to produce continuous swipe action

2019-02-16 21:58发布

I'm trying to reproduce swipe action, with the help of adb. Currently, this code works (for swipe)

adb shell input touchscreen swipe 530 1420 530 1120
adb shell input touchscreen swipe 530 1120 830 1120

which is

adb shell input touchscreen swipe x1,y1, x2,y2

but they are two discontinuous swipes.. Its equivalent to doing the first swipe, take ur hand off the screen and do the second swipe and so on..

I would like to achieve this as a single swipe.. Like, imagine a game where theres hot fire underneath and you have to drag om-nom across various obstacles without taking your finger off om-nom.. with the above mentioned adb swipe, poor om-nom would fall into the fire and become roasted-om-nom. :(

something like

adb shell input touchscreen swipe [(x1,y1, x2,y2), (x3,y3, x4,y4)...(xn-1,yn-1, xn,yn)]

if not adb, any other alternative?

3条回答
\"骚年 ilove
2楼-- · 2019-02-16 22:27

I think this will be a good option

for i in {1..5}; do adb shell input touchscreen swipe 530 1420 530 1120; adb shell input touchscreen swipe 530 1120 830 1120; done
查看更多
孤傲高冷的网名
3楼-- · 2019-02-16 22:39

You can do it in ADB. Use getevent to record your manual input with:

adb shell getevent

Or to record a specific device:

adb shell getevent /dev/input/eventx

Then simuate recorded input with:

adb shell sendevent /dev/input/eventx
查看更多
走好不送
4楼-- · 2019-02-16 22:45
adb shell  "input touchscreen swipe 126 459 413 472 & input command touchscreen swipe 413 472 407 769"

You must run inside android device input command, for continue swap add & between input command, example below:

adb shell "
   input touchscreen swipe 126 459 413 472 1000 & \ # 1th line 
   input touchscreen swipe 413 472 72  776 1000 & \ # 2th line
   input touchscreen swipe 72  776 407 769 1000 | echo done # 3th line" 


126 459   =   302 446   =   413 472
===================================
112 599   =   268 613   =   470 612
===================================
72  776   =   263 802   =   407 769

input touchscreen swipe <x1> <y1> <x2> <y2> [duration(ms)] (Default: touchscreen)

But need to make pausing or delaying (sleep,wait) between command's in order for more precise swipe.

查看更多
登录 后发表回答