无障碍设置能反复自动关闭?

为何无障碍服务的设置经常退出 需要重新去设置
另外定位控件 比如用d().findOne() 今天正常 明天就不行? 同一个app的界面
如果是一个列表 如何遍历整个列表 获取所有行所有列的数据

解决无障碍问题试试无敌战神领主开发的无障碍管理器

AutoX.js提供了一系列的函数,可以帮助你遍历整个列表并获取所有行所有列的数据。通常情况下,你可以通过获取列表元素,然后逐个获取每一行的数据。

以下是一个常见的遍历列表并获取所有行所有列数据的示例代码:

const { device } = require('autox');

async function main() {
  // 打开应用程序或者进入列表页面
  // ...

  // 获取列表对象
  const list = await device.findElements('yourListSelector');

  // 遍历每一行
  for (let i = 0; i < list.length; i++) {
    // 获取当前行对象
    const row = list[i];

    // 获取当前行中所有列的数据
    const columns = await row.findElements('yourColumnSelector');
    
    // 遍历每一列
    for (let j = 0; j < columns.length; j++) {
      // 获取列数据
      const data = await columns[j].getText();
      
      // 输出列数据
      console.log(`Row ${i + 1}, Column ${j + 1}: ${data}`);
    }
  }

  // 关闭应用程序或者进行其他操作
  // ...

  // 关闭设备
  await device.closeApp();
}

main();

在上面的示例代码中,我们首先获取了整个列表对象,然后遍历每一行,再在每一行中遍历每一列,获取列数据并输出。你需要将yourListSelectoryourColumnSelector替换为实际的列表和列的选择器。

请注意,在实际使用时,你可能需要根据具体的情况,例如采用滚动加载的列表或者非常大的列表,对遍历进行优化,以提高效率。