问答 App 把布局中的子元素隐藏了,有什么办法能识别元素吗

tobetree · 2021年09月19日 · 最后由 tobetree 回复于 2021年09月22日 · 7507 次阅读

下图第二个 framelayout 中没有子节点,但其实是有的,识别不出来,有什么办法识别吗

共收到 11 条回复 时间 点赞

额,怎么隐藏的知道不?得先知道隐藏原理,才好推敲怎么识别吧。现在信息太少,没法给具体建议,硬要说就是先了解下这个是什么元素,怎么隐藏掉的。

PS:你这个截图也看不出来这个控件树是怎么 dump 出来的,dump 的具体方法也同步下?除了这个控件树,是否也可以提供下 app 的截图?要不光看这棵树啥都看不出来。

对 陈恒捷 回复

隐藏原理不知道。。使用 weditor dump 下来的。

里面是 h5 容器呀

对 恒温 回复

不是 H5 容器吧,只有 android.widget.FrameLayout。

对 tobetree 回复

看这截图,里面这个像是 h5 或者自定义 view,所以采集不到内部控件树。

你问下开发,这个是 webview 还是什么?

实在不行就只能用图像识别找控件了。

对 陈恒捷 回复

嗯,不行的话,只能用图像识别的方式了

这个获取不到有可能是被过滤了,得看获取结构代码那边,有可能是过滤掉 isVisibleToUser 这个属性了。方便的可以把 apk 发下吗,我这边获取试试

tobetree · #4 · 2021年09月22日 Author
仅楼主可见
对 哲豪 回复

美团众包,Android 应用市场下载的。不过账号不能提供。需要登录之后才会触发这个隐藏

对 tobetree 回复

试了下,确实拿不到。看来只能通过 OCR 来识别了

对 哲豪 回复

嗯,那就只能用 OCR 了

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册。