bug: 控件id是否有笔误??

id 后面有个斜杠/,而不是冒号。
这好像引发了一些筛选控件的bug。

22:24:20.177/D: com.stardust.automator.UiObject@50f01; boundsInParent: Rect(0, 0 - 108, 53); boundsInScreen: Rect(359, 883 - 467, 936); packageName: com.miui.home; className: android.widget.TextView; text: 照片; contentDescription: null; viewId: com.miui.home:id/icon_title; checkable: false; checked: false; focusable: false; focused: false; selected: false; clickable: false; longClickable: false; enabled: true; password: false; scrollable: false; [ACTION_SELECT, ACTION_CLEAR_SELECTION, ACTION_ACCESSIBILITY_FOCUS, ACTION_NEXT_AT_MOVEMENT_GRANULARITY, ACTION_PREVIOUS_AT_MOVEMENT_GRANULARITY, ACTION_SET_SELECTION]

控件bug多的是。

已经凉了。

@adminbug: 控件id是否有笔误?? 中说:

@basking 本来就是斜杠

有很多ID,是没有包名前缀的,比如AAA,这些id用id("AAA")是无法匹配的,只能用var a=idContain("AAA"),然而笑话的是,log(a.id())输出就是AAA

开发者

@卢某某 id显示的时候本身不显示前缀,即使是a.id()也会自动去掉前缀。可以自己加上包名添加前缀。
而不添加前缀不能匹配的原因只可能有一个,就是当前正在运行的应用的包名检测不对。

@adminbug: 控件id是否有笔误?? 中说:

@卢某某 id显示的时候本身不显示前缀,即使是a.id()也会自动去掉前缀。可以自己加上包名添加前缀。
而不添加前缀不能匹配的原因只可能有一个,就是当前正在运行的应用的包名检测不对。

你搞反了。添加了包名后,怎么都找不到控件。

我用shell uiautomator命令保存的布局和autojs查看的一致,有些控件有包名,有些没有。

@admin 还有obj.boundsInParent()到底是什么鬼。不应该返回子控件四个角在父控件的相对坐标吗?返回的数据是错误的。

@admin 还有我写了一点代码,居然发现神奇的bug

var s=xx.findOne();
log(s.parent())//输出一个对象。
var b=yy.findOne();
log(s.parent())//输出null。。。。

这种对象还有引用,也会被回收掉??

我也遇到了
一个是通过auto.js直接生成的代码id("conversation_head").findOne().parent().parent().click()
一个是查看控件信息id = name
之后是通过id("name")才实现点击的
是QQ主界面的自己头像的代码

  • 11
    帖子
  • 2337
    浏览

与 Auto.js 的连接断开,我们正在尝试重连,请耐心等待