2016-09-20 216 views
-2

尝试使用“adb shell输入”模拟手势。在“su”流中执行所有命令。我如何制作曲线?找到这种方式,但它不工作:使用adb输入的一些滑动手势

CommandClick.su("input swipe 520 430 520 815 1000 && input swipe 520 815 675 815 1000"); 

CommandClick.su

public static void su(String... commands) { 
new CommandClick(SU).command(commands).finish();} 

CommandClick

try { 
       dataOutputStream.writeBytes(command + "\n"); 
       dataOutputStream.flush(); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 

我想2个挥笔像一条线......

回答

0

尝试使用命令sendevent

语法:sendevent <device> <command> <argument> <value>

sendevent将要直接输入设备事件队列的任何事件。要复制一个复杂的刷卡,你需要生成:

  1. 开始触摸(又名手指按住)
  2. 新点(又名手指移动) - 多达所需
  3. 结束触摸(又名手指)

每个上述操作的组成:

sendevent <device> <parameters for the operation type> 
sendevent <device> 3 0 <x-coord> 
sendevent <device> 3 1 <y-coord> 
sendevent <device> 0 0 0 # (event separator) 

的具体装置以及操作类型的参数可能因您模拟事件的设备类型和品牌而异。获得这些详细信息的最佳方法是运行getevent,将几次滑动的输出传输到文件并查看输出。

这些链接进入更详细:

  1. [教程上的事件] (http://www.softteco.com/blog/android-writing-events-low-level-touch-screen-automated-shell-test-part-1/

  2. [壳牌脚本使用的SendEvent图案解锁] (https://github.com/mattwilson1024/android-pattern-unlock/blob/master/unlock.sh

+0

不,它不是一个选项。它不为我工作... – user3455010