【问题标题】:AndroidViewClient restarts device with every command after using "touch(x,y)" command once使用“touch(x,y)”命令一次后,AndroidViewClient 使用每个命令重新启动设备
【发布时间】:2015-08-19 18:13:37
【问题描述】:

使用 AndroidViewClient,最近我尝试使用 Culebra 或任何相关脚本执行的每个操作都会重新启动虚拟设备。有没有人遇到过这个?

**edit 1: ** 更具体地说,我只有在尝试在特定区域触摸设备的命令后才会进入这个无休止的重启循环。

即如果我将以下内容放入我的脚本中,它只会重新启动设备,然后所有进一步的 Culebra 生成的命令都会导致设备重新启动

self.vc.device.touchDip(173, 1111)

编辑 2:添加更多信息
我已经在几个不同的模型上复制了这种行为,但我主要使用以下内容:

设备:Google Galaxy Nexus - 4.3 - API 18 - 720x1280

$ culebra -v
culebra 10.7.2

$ dump -v
dump 10.7.2

dump
android.widget.FrameLayout  
 android.view.View com.android.launcher:id/workspace 
  android.view.View com.android.launcher:id/cell3 
     android.appwidget.AppWidgetHostView  
        android.view.View com.android.deskclock:id/analog_appwidget 
     android.widget.TextView  Camera
....

$ adb shell date
Thu Aug 20 12:44:08 EDT 2015

不同的x,y坐标也会重启设备:

adb shell input tap 200 900 <--- restarts the phone as well

编辑 3:登录 adb shell 后的屏幕截图
此处第二条命令后手机再次重启

【问题讨论】:

    标签: android androidviewclient


    【解决方案1】:

    我从未听说过这样的事情,那么我猜是与您的特定环境、设备或版本有关的事情(您的问题中缺少详细信息)。

    无论如何,我将给你一些提示以找出原因,而不是我没有的解决方案,因为我不知道问题。

    首先,检查adb是否正常工作并且可以连接到设备:

    adb 外壳

    AndroidViewClient/culebra 使用input tap 命令发送触摸事件,然后发送类似

    adb shell input tap 173 1111
    

    暂时忽略DIP,直接发送PX坐标。

    另外,测试dump,验证是否可以获取到屏幕内容

    dump -a
    

    我希望这可以帮助您发现问题。

    【讨论】:

    • 谢谢!我确认那里的命令实际上确实重启了手机 - “adb shell input tap 369 1113”应该对应于点击 Google Galaxy Nexus 4.3 (720x1280) 上的主页按钮,但该命令本身只是重启手机跨度>
    • 不同的 x,y 怎么样?也重启了?
    • adb shell date 怎么样,也要重启?
    • 我刚刚在原始帖子中添加了更多信息。 adb shell input tap 200 900 也重启了设备
    • 先试试adb shell,当你在shell提示符下发出input命令。如果他们打印一些错误,您将能够看到它。
    猜你喜欢
    • 2018-04-26
    • 1970-01-01
    • 2013-09-17
    • 2016-08-26
    • 2012-06-08
    • 2021-07-20
    • 1970-01-01
    • 2017-10-28
    • 2021-05-31
    相关资源
    最近更新 更多