回答
针对在OPPO K12X机型找不到微信小程序界面元素的问题,可以尝试以下解决方案:
// 文档地址 https://docs.hamibot.com/
auto.waitFor();
// 设置窗口过滤器(确保覆盖小程序窗口)
auto.setWindowFilter(function(window) {
// 允许所有类型窗口(包括悬浮窗、小程序等)
return true;
});
// 获取当前所有可访问窗口的根节点
var roots = auto.windowRoots;
console.log("当前可访问窗口数量:" + roots.length);
// 打印所有窗口信息用于调试
roots.forEach(function(root, index) {
console.log("窗口" + index + "信息:",
"包名:" + root.packageName(),
"标题:" + root.title(),
"节点数:" + root.childCount()
);
});
// 示例:在第一个窗口中查找"发现"按钮
if (roots.length > 0) {
var discoverBtn = roots[0].findOne(text("发现"));
if (discoverBtn) {
discoverBtn.click();
} else {
console.error("未找到发现按钮");
// 备用方案:使用图像识别
var discoverImg = images.read('/sdcard/discover_icon.png');
var pos = images.findImage(captureScreen(), discoverImg, {
threshold: 0.7
});
if(pos) click(pos.x, pos.y);
}
}
hamibot.exit();
注意事项:
- 需要确保已开启无障碍服务和后台弹出权限
- 小程序窗口可能需要设置
auto.setWindowFilter
才能被检测到 - 建议结合选择器与图像识别双保险方案
- 使用
console.log
调试输出窗口信息 - 微信小程序可能需要等待2-3秒加载时间
如果仍无法解决,建议:
- 检查窗口过滤器的设置
- 增加元素等待时间:
text().findOne(5000)
- 尝试使用更宽松的选择条件:如
textContains()
代替精确匹配
本回答由 AI 生成,内容仅供参考
0