通过终端上的控制台运行 query("*") 时,我得到类似于以下内容的输出。此输出对于所有意图和目的都是正确的:
[
[ 0] {
"id" => nil,
"enabled" => true,
"contentDescription" => nil,
"class" => "com.android.internal.policy.impl.PhoneWindow$DecorView",
"rect" => {
"center_y" => 616,
"center_x" => 360,
"height" => 507,
"y" => 363,
"width" => 640,
"x" => 40
}
]
但是,当我在测试执行期间在 RubyMine 上运行相同的命令时,我得到错误的偏移输出,如下所示:
{
"id"=>nil,
"enabled"=>true,
"contentDescription"=>nil,
"class"=>"com.android.internal.policy.impl.PhoneWindow$DecorView",
"rect"=>{
"center_y"=>394,
"center_x"=>360,
"height"=>507,
"y"=>141,
"width"=>640,
"x"=>40
},
"tag"=>nil,
"description"=>"com.android.internal.policy.impl.PhoneWindow$DecorView{41fcdad8 V.E..... R....... 0,0-640,507}
}
我只在我的应用程序的一个特定屏幕上看到这种行为。其余的都按预期工作,但在这个屏幕上它始终是 222 像素。
这导致单击事件失败,因为它认为元素在屏幕上比实际位置高得多。
我偶尔会在控制台上看到不正确的输出,并且同样从 RubyMine 得到正确的输出,但是大约 95% 的行为与我所描述的一样。
我正在使用葫芦-android 0.5.2
有谁知道是什么导致了这种变化?