Android, low level shell click on screen
Use: input tap x y
(also input text, swipe, keyevent are available)
adb shell input tap x y
adb shell input swipe x1 y1 x2 y2
adb shell input text Hello!
adb shell input keyevent ID
By this way you do not need to care about hardware implementation. Using events you will have to imeplemnt them for each device. All these commands could be executed on device or on PC via ADB.
Happy testing! (:
To send touch event you need to do:
1 Set coordinates:
1 |
<span style="color: #660000;">adb shell sendevent </span><span style="color: #660000;">/</span><span style="color: #660000;">dev</span><span style="color: #660000;">/</span><span style="color: #660000;">input</span><span style="color: #660000;">/</span><span style="color: #660000;">event2 </span><span style="color: #660000;">3</span><span style="color: #660000;"> </span><span style="color: #660000;">0</span><span style="color: #660000;"> x<br />adb shell sendevent </span><span style="color: #660000;">/</span><span style="color: #660000;">dev</span><span style="color: #660000;">/</span><span style="color: #660000;">input</span><span style="color: #660000;">/</span><span style="color: #660000;">event2 </span><span style="color: #660000;">3</span><span style="color: #660000;"> </span><span style="color: #660000;">1</span><span><span style="color: #660000;"> y</span></span> |
2 Send touch event (must have 0 0 0 pair):
1 |
<span style="color: #660000;">adb shell sendevent </span><span style="color: #660000;">/</span><span style="color: #660000;">dev</span><span style="color: #660000;">/</span><span style="color: #660000;">input</span><span style="color: #660000;">/</span><span style="color: #660000;">event2 </span><span style="color: #660000;">1</span><span style="color: #660000;"> </span><span style="color: #660000;">330</span><span style="color: #660000;"> </span><span style="color: #660000;">1</span><span style="color: #660000;"><br />adb shell sendevent </span><span style="color: #660000;">/</span><span style="color: #660000;">dev</span><span style="color: #660000;">/</span><span style="color: #660000;">input</span><span style="color: #660000;">/</span><span style="color: #660000;">event2 </span><span style="color: #660000;">0</span><span style="color: #660000;"> </span><span style="color: #660000;">0</span><span style="color: #660000;"> </span><span style="color: #660000;">0</span><span><br /></span> |
3 Send release finger event (must have 0 0 0 pair):
1 |
<span style="color: #660000;">adb shell sendevent </span><span style="color: #660000;">/</span><span style="color: #660000;">dev</span><span style="color: #660000;">/</span><span style="color: #660000;">input</span><span style="color: #660000;">/</span><span style="color: #660000;">event2 </span><span style="color: #660000;">1</span><span style="color: #660000;"> </span><span style="color: #660000;">330</span><span style="color: #660000;"> </span><span style="color: #660000;">0</span><span style="color: #660000;"><br />adb shell sendevent </span><span style="color: #660000;">/</span><span style="color: #660000;">dev</span><span style="color: #660000;">/</span><span style="color: #660000;">input</span><span style="color: #660000;">/</span><span style="color: #660000;">event2 </span><span style="color: #660000;">0</span><span style="color: #660000;"> </span><span style="color: #660000;">0</span><span style="color: #660000;"> </span><span style="color: #660000;">0</span><span><br /></span> |
Please note:
1 You can record events:
1 |
<span><span style="color: #660000;">adb shell getevent</span></span> |
2 if you use getevent all event values are in hex.
CONFIRMED, THIS WAY IS NOT WORKING ANYMORE, at least for Android 2.2.
I have rechecked, Android low level events signature was changed starting from Android 2.2 Froyo.
I just dumped single click:
/dev/input/event2: 0003 0030 00000068
/dev/input/event2: 0003 0032 0000000a
/dev/input/event2: 0003 0035 0000022e
/dev/input/event2: 0003 0036 00000039
/dev/input/event2: 0000 0002 00000000
/dev/input/event2: 0003 0012 0000002f
/dev/input/event2: 0003 0014 00000001
/dev/input/event2: 0000 0000 00000000
/dev/input/event2: 0003 0030 00000000
/dev/input/event2: 0003 0032 0000000a
/dev/input/event2: 0003 0035 0000022e
/dev/input/event2: 0003 0036 00000039
/dev/input/event2: 0000 0002 00000000
/dev/input/event2: 0003 0012 00000020
/dev/input/event2: 0003 0014 00000000
/dev/input/event2: 0000 0000 00000000
It has obviously another structure.. I’m investigating right now this situation,
solution will be here tomorrow 😉
After a quick investigation I have reproduced the click for Froyo Android:
Perl script (click on screen at 558, 57 point):
system(“adb shell sendevent /dev/input/event2 0003 48 104“);
system(“adb shell sendevent /dev/input/event2 0003 50 10“);
system(“adb shell sendevent /dev/input/event2 0003 53 558“);
system(“adb shell sendevent /dev/input/event2 0003 54 57“);
system(“adb shell sendevent /dev/input/event2 0000 2 00000000“);
system(“adb shell sendevent /dev/input/event2 0003 18 47“);
system(“adb shell sendevent /dev/input/event2 0003 20 00000001“);
system(“adb shell sendevent /dev/input/event2 0000 0000 00000000“);
system(“adb shell sendevent /dev/input/event2 0003 48 00000000“);
system(“adb shell sendevent /dev/input/event2 0003 50 10“);
system(“adb shell sendevent /dev/input/event2 0003 53 558“);
system(“adb shell sendevent /dev/input/event2 0003 54 57“);
system(“adb shell sendevent /dev/input/event2 0000 0002 00000000“);
system(“adb shell sendevent /dev/input/event2 0003 18 32“);
system(“adb shell sendevent /dev/input/event2 0003 20 00000000“);
system(“adb shell sendevent /dev/input/event2 0000 0000 00000000“);
How I did it:
1. Start dump motion event you need to reproduce:
grep is very useful to filter output.
2. Do motion event you want to reproduce;
3. Than just convert all values from hex in dump to decimal values! 🙂
To find what eventX is working for you do following:
1. Start terminal and type
Please check my tutorial for low level interaction with device
Happy motion events reproducing! (:
Best regards,
Yahor
When I capture single touch events with getevent | grep event3 I seem to get a different number of events each time I touch the screen(anywhere from about 10-20). I am trying to figure out the code that will simulate a simple touch then release on a specified point. How many sendevent calls should I need to make for this?
Hello Tim,<br /><br />Lets decide, do you want to reproduce single tap?<br />If true – you can find a minimal set of events for this task in this article for point 558,57.<br /><br />I just have started investigation and it is very cool that you are interested in my article :)<br /><br />Answer, why you are getting different number of events:<br />a) you will never get less set of events, I have
Also, please take a look to article I have added just 2 minutes ago:<br /><br />http://softteco.blogspot.com/2011/03/android-writing-events-low-level-touch.html<br /><br />It describes basics how to use getevents and sendevent.<br /><br />I will highly appreciate any comment 🙂 If you feel that you need some more info – just specify what you are interested in, and I will added it during launch
thx for the example. this might help someone else:<br /><br />To record your own script based on your actions, rather than programming:<br /><br /># convert getevent string to sendevent string<br />function convert_input()<br />{<br /> awk '{ <br /> if (($1 != "") && (substr($0,1,1)=="/"))<br /> { sub(":","",$
Anonymous said…<br />Hello, PB,<br /><br />The way is cool!<br /><br />But, do you know how to add custom coords into this function?<br /><br />Best regards,<br />Yahor
not sure i understand your question. the script is just to record manual actions, and convert the actions to a script. where are you wanting to put in custom coords ?<br /><br /><br />is this what you mean ? if you take your original code, you can do this:<br /><br /># send a touch event at X Y<br />function atouchxy()<br />{<br /> adb shell sendevent /dev/input/event3 0003 48 104<br />
Hello, PB,<br /><br />Yep, such scripts are more interesting 🙂 But most interesting is to reproduce by this way drag motion event. Do you succeed to reproduce dragging? I have reproduced only short drag via shell script (Like you are preparing 2 fingers, touch screen by left finger, release, immideatelly touch screen by right finger.) Using this approach I'm unlocking the device.<br /><br />
Hi,<br /><br />On my Samsung Galaxy Tab (2.2) the sequence from getevent was shorter (12 lines instead od 16):<br /><br />// touch screen:<br />/dev/input/event2: 0003 0035 0000039f // 53<br />/dev/input/event2: 0003 0036 0000022f // 54<br />/dev/input/event2: 0003 0030 00000028 //48<br />/dev/input/event2: 0003 0032 00000001 //50<br />/dev/input/event2: 0000 0002 00000000 //2<br />/dev/
can someone tell more detail about how to make and use this file or function 'convert_input()'?<br /><br /><br />thank you very much<br /><br />KJ
Hello Kacper,<br /><br />You are very welcome, both line are optional and looks like used only for swipe motions.<br /><br />Convert_input usage was perfectly described by PB:<br />adb shell getevent | convert_input > draw_a_circle.sh<br /><br />Best regards,<br />Yahor
Informative.<br /><br />Thanks for such a useful blog.<br />I wanted to know if we can add delay while sending the commands? <br />i am capturing events using 'adb shell getevent' and sending the same sequence using 'adb shell sendevent'.<br />The application time to respond and meanwhile the sequence is lost. Any inputs shall be of great help.
Hello,<br /><br />You can use: sleep N<br />where N is timeout in seconds (but you able to specify milliseconds like: N=0.1).<br /><br />Best regards,<br />Yahor
hi,<br />I am trying this but it's not working.<br />this is my output from getevent:<br /><br />/dev/input/event4: 0003 002b 002c0003<br />/dev/input/event4: 0003 002a 820301ad<br />/dev/input/event4: 0003 002b 00120002<br />/dev/input/event4: 0003 002a 820301ad<br />/dev/input/event4: 0003 002b 00000000<br />/dev/input/event4: 0003 002a 80000000<br />/dev/input/event4: 0003 002b 00250004<br
Hello Dan,<br /><br />What device do you use? Htc?<br /><br />You have to analyse this output and find how to decode them :)<br /><br />3 42 0 is 0 0 0 :)<br /><br />Could you please try to do the following:<br />1. do a very quick click into 0,0 on your device and save the output;<br />2. do a very quick click into 0, 100 coord on your device and save the output;<br />3. do a very quick click
update:<br /><br />you can post only hex output, because decimal output has no sense :)<br /><br />Best regards,<br />Yahor
its weird, if i click on the left or right side of the screen, anywhere from top to bottom, this is the output (only along the edge of the screen):<br /><br />/dev/input/event4: 0003 002b 00000000<br />/dev/input/event4: 0003 002a 80000000<br />/dev/input/event4: 0003 002b 00000000<br />/dev/input/event4: 0003 002a 80000000<br /><br />I don't have time now to setup robotium, I will tonight
I am having some trouble getting robotium to work correctly. :/<br />I have been working on decoding getevent.<br />after i take my finger off the screen the last command is always:<br />0003 002b 00000000<br />0003 002a 80000000<br /><br />I can reproduce a click with only 4 lines, so only two lines actually make the click<br />the first is usually <br />00**000*<br />(0's stay the same but
I got robotium setup but getevent doesn't print/see the clicks.<br />Is there anything else I could try to get more accurate clicks?<br /><br />Dan
Hello Dan,<br /><br />Could you please try to do the following:<br /><br />1) adb shell getevent<br /><br />2) copy all interfaces list event0-N and post them with theirs names, like:<br /><br />add device 1: /dev/input/event3<br /> name: "kxtf9_accel"<br />add device 2: /dev/input/event0<br /> name: "gpio-keys"<br />add device 3: /dev/input/event2<br /> name: &
add device 1: /dev/input/event9<br /> name: "compass"<br />add device 2: /dev/input/event8<br /> name: "curcial-oj"<br />add device 3: /dev/input/event7<br /> name: "dummy_keypad"<br />add device 4: /dev/input/event6<br /> name: "lightsensor-level"<br />add device 5: /dev/input/event5<br /> name: "incrediblec-keypad"<br />
this seems to be the basic layout<br />0003 002b 00**000*<br />0003 002a ********<br />0003 002b 00000000<br />0003 002a 80000000<br /><br />the first part (00**000*) is the pressure of the click, the second part (*******) is the actual coords. (xxxxyyyy) <br />the last two lines only show up after I lift my finger off the screen.<br />I'm not sure how to decode it to make my own clicks yet
Hello Dan,<br /><br />On my HTC Desire 2.2:<br /><br />yahor@xeondtp:~$ adb shell getevent | grep event3<br />add device 7: /dev/input/event3<br />1) /dev/input/event3: 0003 002b 00260002<br />2) /dev/input/event3: 0003 002a 88f00e53<br />3) /dev/input/event3: 0003 002b 00270002<br />4) /dev/input/event3: 0003 002a 88ea0e6e<br />5) /dev/input/event3: 0003 002b 00000008<br />6) /dev/input/event3:
It must be different for us, by the way I'm on gingerbread(android 2.3.3). Are you on Froyo. Would it be the same for all devices that have the same android versions? Or does it depend on the type of screen you have?<br /><br />I haven't tested pressure yet but here is what I have<br /><br />pressure on screen(have not tested different numbers yet)<br />0003 002b 00xx000x<br /><br />at
Also there doesn't seem to be any arithmetic on the coords.<br />So 8009000b would click at (1, 1) and 800a000c would click at (2, 2)
I wasn't thinking earlier, the coordinates above don't seem to depend on pixel width. it seems the hex codes go by one but two different coordinates may click on the same point (according to the phone)<br />As I said before the left side of the screen is:<br />8009****<br />right:<br />83f1****<br />My screen width resolution is 600, but the hex codes allow for 1000 different coords. <br
Hi all, thank you for your great tips!<br />I'm trying to emulate key press on samsung galaxy s2 with gingerbread 2.3.5, this is the getevent output: 14 lines<br />/dev/input/event2: 0003 0035 00000062<br />/dev/input/event2: 0003 0036 00000179<br />/dev/input/event2: 0003 0030 0000004c<br />/dev/input/event2: 0003 0032 00000004<br />/dev/input/event2: 0003 0039 00000000<br />/dev/input/
I found the solution, it didn't work because it require anoter 0 0 0 at the end, strange…:) this is the final result:<br />sendevent /dev/input/event2 3 53 98<br />sendevent /dev/input/event2 3 54 377<br />sendevent /dev/input/event2 3 48 76<br />sendevent /dev/input/event2 3 50 4<br />sendevent /dev/input/event2 3 57 0<br />sendevent /dev/input/event2 0 2 0<br />sendevent /dev/input/event2
How did you get it to work in tasker, what context do you use. I can't get it to click at all.<br />Localeexecute plugin has root permissions. It just doesn't try to click, it will do anything else I set it to do. Just not clicks.<br /><br />Dan
Hello Dan,<br /><br />What is tasker? :)<br /><br />Best regards,<br />Yahor
Hello,<br /><br />I think if you want to execute click, it would be better to create a *.sh file which takes coord params and run it from the tasker..<br /><br />Also, make sure that your interface is accessible for your tasker, or do chmod 777 /dev/input/event4 :)<br /><br />Best regards,<br />Yahor
I found the problem with the execute plugin.<br />It asks for root permissions for every command, but it tries to force close for every command. If I click wait instead of force close then it will continue to the next command and try to force close again.<br />I will try the *.sh script later tonight, thanks for the tip :)<br /><br />Dan
Hi!<br />And do you think it would be possible to automatically figure out what is the correct eventX for the current device touchscreen?
Hello Dan,<br /><br />You are always welcome :)<br /><br />Please share your results if possible :)<br /><br />Best regards,<br />Yahor
Hi cpphool,<br /> The easiest way to find the correct eventX (in my opinion):<br />after you have adb setup connect your phone to your computer, open a command prompt and type <br />"adb getevent -p". That should list all events, showing the number. here is the result for my touchscreen:<br /><br />add device 6: /dev/input/event4<br /> name: "atmel-touchscreen"<br />
Hello Dan,<br /><br />"adb getevent -p" – really great tip!<br /><br />Thanks a lot!<br /><br />Happy testing! (:<br /><br />Best regards,<br />Yahor
Hi guys, to make it work with tasker I used execute plugin, but instead of put all commands in execute, with problems that you have seen, I have:<br /><br />1. save all text lines in a txt file, for example:<br />sendevent /dev/input/event2 3 53 98<br />sendevent /dev/input/event2 3 54 377<br />sendevent /dev/input/event2 3 48 76<br />sendevent /dev/input/event2 3 50 4<br />sendevent /dev/input/
Hello Gabriel,<br /><br />Thanks for the sharing knowledges and for the tip! 🙂 <br /><br />I can add, that if you replace 98 and 377 with $1 and $2 accordignaly, you would be able to run script with X, Y params: sh /sdcard/mytxtfile.txt 100 200<br /><br />Happy clicking! (:<br /><br />Best regards,<br />Yahor
Hi, <br />I got the locale execute plugin to perform clicks for me, only problem is sometimes it tries to force close, just hitting 'wait' seems to fix it.<br />I checked the logcat and I am getting an 'app not responding' error. So its a problem with the responsiveness of the plugin.<br />I also tried executing the .sh script with a terminal emulator. instead of using !sendevent
hey, <br /><br />when i run adb shell getevent | grep event2<br />in C:android-sdktools i get this:<br />'grep' is not recognized as an internal or external command,<br />operable program or batch file<br /><br />what am i doing wrong? Thanks
Hello,<br /><br />The reason that "Grep" it is Unix command, try to use "Find" command for windows:<br /><br />adb shell getevent | Find "event2"<br />or adb shell getevent | Find /i "event2"<br />where /i – for case insensitive lookup (perhaps -i)<br /><br />Happy testing! (:<br /><br />Best regards,<br />Yahor
Hi all,<br />I'm new here, and just starting to use adb to reproduce click on devices.<br />I have HTC Inspire ( Android vesion 2.2.1) and trying to record click.<br />I extracted events related to "touch":<br />adb shell sendevent /dev/input/event3 3 48 48<br />adb shell sendevent /dev/input/event3 3 50 5<br />adb shell sendevent /dev/input/event3 3 53 511<br />adb shell sendevent
Hello,<br /><br />Yep, your click is too long. Looks like you have something like double or triple click..<br /><br />Best regards,<br />Yahor
Any suggestions how to make it shorter?<br />Which lines are about it?
Hello,<br /><br />If you try to discover this blog, you would find the answer :)<br /><br />Your click is very alike to slide/swipe.<br />If you cut first half, you should get a single click, just try to use:<br /><br />adb shell sendevent /dev/input/event3 3 48 38<br />adb shell sendevent /dev/input/event3 3 50 3<br />adb shell sendevent /dev/input/event3 3 53 511<br />adb shell sendevent /dev/
Also, please note, you can use example from article (just copy&paste "adb shell…. " from qoutes) and it should be fine signle click.
Hi Yahor,<br />thank you for your reply.<br />I've tried to use the code that you posted in your reply, and, got the same.<br />Some details what kind of click I'm trying to do:<br />I'm on youtube mobile video and clicking "play" button to start video. It switches to player where video starts to play, and this might affect the click. I've tried to perform simple click
It works!<br />I've removed few more lines:<br />adb shell sendevent /dev/input/event3 3 48 22<br />adb shell sendevent /dev/input/event3 3 50 1<br />adb shell sendevent /dev/input/event3 3 53 511<br />adb shell sendevent /dev/input/event3 3 54 414<br />adb shell sendevent /dev/input/event3 0 2 0<br />adb shell sendevent /dev/input/event3 0 0 0<br />adb shell sendevent /dev/input/event3 3 48
Hello,<br /><br />You are always welcome :)<br /><br />Happy testing! (:<br /><br />Best regards,<br />Yahor
thank u!!<br />It works on my LG optimus(2.3.4 gingerbread)
Hello,<br /><br />You are always very welcome :)<br /><br />Best regards,<br />Yahor
Hi!<br />I try this on android 4.0.3 (SGS2)<br />This code works, but after it my phone is ignoring screen taps. Only reset helps.<br /><br />Some remote control programms result the same. Some works good.
Hello! I tried a lot of the above code but none of them is working 🙁 Maybe you can help me and provide some lines of code to touch a single point on the display. Here is what i've got from adb shell getevent:<br /><br />add device 1: /dev/input/event0<br /> name: "Atmel maXTouch Touchscreen controller"<br />add device 2: /dev/input/event2<br /> name: "7k_handset"
Hello,<br /><br />Just try to do: <br />chmod 777 /dev/event*<br />to make event0-event3 accessible for you.<br /><br />Please let me know if you have another issue.<br /><br />Best regards,<br />Yahor
update: adb shell chmod 777 /dev/event*
Hi Yahor,<br /><br />/dev/eventX are accessible for me. The problem looks more like they changed something in the behavior. I dumped one touch and tried to reproduce it. It actually works if i run it as a script on the phone, else sending the commands would take to much time and android thinks i pressed the touchscreen for about a second. Here is what i'm sending to the phone (and actually
Hi Stefan,<br /><br />I think it should looks like:<br /><br />sendevent /dev/input/event2 1 330 1<br />sendevent /dev/input/event2 3 48 14<br />sendevent /dev/input/event2 3 53 $1<br />sendevent /dev/input/event2 3 54 $2<br />sendevent /dev/input/event2 0 2 0<br />sendevent /dev/input/event2 0 0 0<br />sendevent /dev/input/event2 1 330 0<br />sendevent /dev/input/event2 3 48 0<br />sendevent /
Ok, that actually works fine. Thank you. But for my device it's event0.<br /><br />Best regards,<br />Stefan
Just wanted to say this has been a HUGE help. Thank you so much for writing this. Can't find anywhere else that even begins to explain it.
It didn't work with Android 3.0+ (tablet).. sometimes sendevent missed for X,Y co-ordinates..<br /><br />I tried to send touch event for x:113 y:165,<br /><br /><br />adb shell sendevent /dev/input/event2 1 330 1<br />adb shell sendevent /dev/input/event2 3 48 14<br />adb shell sendevent /dev/input/event2 3 53 113<br />adb shell sendevent /dev/input/event2 3 54 165<br />adb shell sendevent /
i want to perform button click on messaging icon on the screen. i made this script for the same. on running it, the icon just moves but is not clicked and messaging page is not open.<br />How can I do this?<br />Do I need to control pressure to do that?<br /><br />I was able to emulate swipe and key press but not this button click on a screen where icons can be dragged.<br /><br />sendevent /dev/
I am trying this on android 4.0.3 and 4.1 and they don't work either? Did Google change this again?
Confirmed not working for Android 4.x, but the<br />adb shell getevent | grep event2<br />method works. Thanks.<br /><br />So I used the method and got result for ICS. Only 8 lines of code is need.
Hello,<br /><br />Yep, Google has changed signature.<br /><br />Also, I can confirm that Samsung and HTC have own signatures on various platform levels.<br /><br />Best regards,<br />Yahor
Hi Folks,<br /><br />Is it possible user given (x,y) co-ordinates can be invoke as a local touch event for non-rooted device.<br /><br />Rooted is possible to access /dev/input/event3 and we can convert our own coordinates and create a touch event. But Non-Rooted Android device How should I my approach? Kindly share your views.
Hi,<br /><br />yes, it is possible for 4.1 android device. Please check my newest post in this blog.<br /><br />Best regards,<br />Yahor
OMG ! it’s working so wonderfully on 2.2.3 !
thanks !
You are very welcome! 🙂
I have read this blog that is really interesting and easy to understand the low level signature process that is nice process explained in this blog that help me and other.
Thanks! Please check our new articles! 🙂
Excellent article.
Thanks a lot, Yahor Paulavets.
Do you have a G+ profile?
Thanks!I think yes, but I'm not sure.
Best regards,
Yahor
Hi,
Just wanted to mention here that it is very easy to emulate tap/swipe on phones: Galaxy S3, Nexus S, Nexus 4 (and probably Galaxy Nexus and Galaxy S4, but I haven’t tried yet).
You just use same shell input command:
input tap [x] [y]
input swipe [x1] [y1] [x2] [y2]
Hi Yahor,
adb getevent and the send events always works. But the problem is in interpreting the slide down(scroll down) and slide up on the emulator. When i replay them using sendevent, those events are not being recognised properly as scroll rather they are recognised as long press so dragging (the icon in the location is being moved to another) occurs. Any idea of how to fix that?
Hi!
The better way to go is:
input tap [x] [y]
input swipe [x1] [y1] [x2] [y2]
Thanks to stansult!
If you really want to continue with events, here is the secret of any single finger gesture:
1) split events to finger down and finger up
2) send finger down with different coords
3) send funger up to complete the gesture
On my galaxy nexus running newest CM the tap x y and swipe x y x y methods make my device stuck into a bootanimation mode and all i can do is restart :O What can this be?
I need a way to find co-ordinates of where I tap on the screen… Like if I tap somewhere on my tablet, connected via a USB cable, the co-ordinates of the tap position are printed out into the console. Also, is there any good way to access the swipedown menu? like the one where you put your finger to the top of the screen and swipe downwards?
Found 2 solutions.
1) All you need to know is your phone screen resolution, then the X is horizontal value from left to right and the Y is the vertical value from up to down.
2) Go to Developer Options and enable "Show touch data" and you will be able to see the coordinates where you touch
Likewise. I'm also searching for this
Can you use decent colours for the text on this page- it's awful
Hi Yahor
I am trying to do double click ( for zooming in and out), how can I do this ??
Regards
How can you send Unicode text using ADB (even of other languages) ? <br />
I have read this blog that is really interesting and easy to understand. Thanks for sharing this.