B2B网络软件

标题: AIWROK软件IOS苹果系统检测目标类[Detect]方法小结 [打印本页]

作者: YYPOST群发软件    时间: 昨天 14:59
标题: AIWROK软件IOS苹果系统检测目标类[Detect]方法小结
AIWROK软件IOS苹果系统检测目标类[Detect]方法小结
AIWROK软件IOS苹果系统检测目标类[Detect]方法小结 B2B网络软件 AIWROK软件IOS苹果系统检测目标类[Detect]方法小结 B2B网络软件 AIWROK软件IOS苹果系统检测目标类[Detect]方法小结 B2B网络软件

  1. // 🔨检测目标类 [Detect] 方法小结
  2. // 第一个方法:📌score 获取检测分数
  3. /*
  4. 类别 详情说明
  5. 方法功能 获取检测对象的分数
  6. 方法签名 Single score ()
  7. 返回值 Single
  8. 参数 无
  9. */
  10. // 示例:获取检测对象的分数
  11. var detect = new Detect ();
  12. var score = detect.score (); // 获取检测分数
  13. // 第二个方法:📌getRect 获取检测区域
  14. /*
  15. 类别 详情说明
  16. 方法功能 获取检测对象的区域(所属模块:获取检测区域)
  17. 方法签名 String getRect ()
  18. 返回值 String
  19. 参数 无
  20. */
  21. // 示例:获取检测对象的区域信息
  22. var detect = new Detect ();
  23. var rectInfo = detect.getRect (); // 获取检测区域
  24. // 第三个方法:📌clickRandom 随机点击
  25. /*
  26. 类别 详情说明
  27. 方法功能 随机点击目标的一个坐标
  28. 方法签名 Void clickRandom ()
  29. 返回值 Void
  30. 参数 无
  31. */
  32. // 示例:随机点击目标区域内的坐标
  33. var detect = new Detect ();
  34. detect.clickRandom (); // 随机点击
  35. // 第四个方法:📌click 点击
  36. /*
  37. 类别 详情说明
  38. 方法功能 执行点击操作
  39. 方法签名 Void click ()
  40. 返回值 Void
  41. 参数 无
  42. */
  43. // 示例:对检测目标执行点击操作
  44. new Detect ().click (); // 执行点击
复制代码
📌score 获取检测分数
类别
详情说明
方法功能
获取检测对象的分数
方法签名
Single score()
返回值
Single
参数
案例
var detect = new Detect();
var score = detect.score(); // 获取检测分数
📌getRect 获取检测区域
类别
详情说明
方法功能
获取检测对象的文本内容(所属模块:获取检测区域)
方法签名
String text()
返回值
String
参数
案例
var detect = new Detect();
var detectedText = detect.text(); // 获取检测文本
📌clickRandom随机点击
类别
详情说明
方法功能
随机点击目标的一个坐标
方法签名
Void clickRandom()
返回值
Void
参数
案例
hid.clickRandom();
📌click点击
类别
详情说明
方法功能
执行点击操作
方法签名
Void click()
返回值
Void
参数
案例
new Detect().click();
示例演示:
  1. /*
  2.    欢迎使用AiWork安卓自动化IDE
  3.    帮助文档: http://help.autoapp.net.cn
  4.    官方地址: www.aiwork24.com
  5.    qq群: 711841924
  6. */

  7. // 🔨检测目标类 [Detect] 实际运行示例

  8. // 创建一个可以实际运行的示例
  9. function runDetectExample() {
  10.     printl("开始执行Detect类实际运行示例");
  11.    
  12.     try {
  13.         // 先进行全屏截图
  14.         printl("正在进行屏幕截图...");
  15.         var screenshot = screen.screenShotFull();
  16.         printl("截图完成");
  17.         
  18.         // 使用自带OCR进行文字识别
  19.         printl("正在进行OCR识别...");
  20.         var ocrResult = screenshot.ocr(0, 0, 1, 1);
  21.         printl("OCR识别完成");
  22.         
  23.         // 释放截图资源
  24.         screenshot.close();
  25.         
  26.         // 获取所有识别的文本
  27.         var allText = ocrResult.getAllString();
  28.         printl("识别到的所有文本: " + allText);
  29.         
  30.         // 获取所有识别的目标
  31.         var detects = ocrResult.getAllDetect();
  32.         printl("识别到的目标数量: " + detects.length);
  33.         
  34.         // 遍历所有检测到的目标并演示Detect类的方法
  35.         if (detects.length > 0) {
  36.             for (var i = 0; i < Math.min(detects.length, 3); i++) { // 限制最多处理3个目标
  37.                 var detect = detects[i];
  38.                
  39.                 printl("\n=== 检测目标 " + (i+1) + " ===");
  40.                
  41.                 // 方法一:获取检测分数
  42.                 try {
  43.                     var score = detect.score();
  44.                     printl("score()方法 - 检测分数: " + score);
  45.                 } catch (e) {
  46.                     printl("score()方法调用失败: " + e.message);
  47.                 }
  48.                
  49.                 // 方法二:获取检测区域
  50.                 try {
  51.                     var rect = detect.getRect();
  52.                     printl("getRect()方法 - 检测区域: " + rect);
  53.                 } catch (e) {
  54.                     printl("getRect()方法调用失败: " + e.message);
  55.                 }
  56.                
  57.                 // 注意:clickRandom()和click()方法会实际执行点击操作,
  58.                 // 在没有明确目标的情况下不建议执行,以免影响设备操作
  59.                 printl("clickRandom()方法 - 随机点击目标区域(此方法会实际执行点击操作)");
  60.                 printl("click()方法 - 点击目标中心点(此方法会实际执行点击操作)");
  61.             }
  62.             
  63.             // 演示查找特定文本并执行点击操作
  64.             printl("\n=== 查找特定文本示例 ===");
  65.             try {
  66.                 // 尝试查找常见的UI文本
  67.                 var commonTexts = ["确定", "取消", "关闭", "下一步", "完成"];
  68.                 var foundTarget = null;
  69.                
  70.                 for (var j = 0; j < commonTexts.length; j++) {
  71.                     var textDetect = ocrResult.findText(commonTexts[j], [0, 0, 1, 1]);
  72.                     if (textDetect != null) {
  73.                         foundTarget = textDetect;
  74.                         printl("找到文本 '" + commonTexts[j] + "',分数: " + foundTarget.score());
  75.                         printl("目标区域: " + foundTarget.getRect());
  76.                         break;
  77.                     }
  78.                 }
  79.                
  80.                 if (foundTarget != null) {
  81.                     printl("演示点击操作 (注意:为避免误操作,实际点击已被注释)");
  82.                     // foundTarget.click(); // 实际点击操作
  83.                     // foundTarget.clickRandom(); // 随机点击操作
  84.                 } else {
  85.                     printl("未找到预定义的常见文本");
  86.                 }
  87.             } catch (e) {
  88.                 printl("查找特定文本时发生错误: " + e.message);
  89.             }
  90.         } else {
  91.             printl("未检测到任何目标");
  92.         }
  93.         
  94.     } catch (e) {
  95.         printl("执行过程中发生错误: " + e.message);
  96.         printl("错误堆栈: " + e.stack);
  97.     }
  98.    
  99.     printl("\nDetect类方法演示完成");
  100. }

  101. // 简化版本的示例,只输出方法调用示例而不实际执行点击
  102. function detectMethodExamples() {
  103.     printl("\n=== Detect类方法调用示例 ===");
  104.     printl("以下是在实际脚本中使用Detect类的典型方式:");
  105.    
  106.     printl("\n1. 基本OCR识别流程:");
  107.     printl("   var screenshot = screen.screenShotFull();");
  108.     printl("   var ocrResult = screenshot.ocr(0, 0, 1, 1);");
  109.     printl("   var detects = ocrResult.getAllDetect();");
  110.     printl("   screenshot.close(); // 释放资源");
  111.    
  112.     printl("\n2. 遍历并分析检测目标:");
  113.     printl("   for (var i = 0; i < detects.length; i++) {");
  114.     printl("       var detect = detects[i];");
  115.     printl("       var score = detect.score();     // 获取置信度");
  116.     printl("       var rect = detect.getRect();    // 获取区域坐标");
  117.     printl("       printl('目标' + i + ' 分数:' + score + ' 区域:' + rect);");
  118.     printl("   }");
  119.    
  120.     printl("\n3. 查找特定文本并操作:");
  121.     printl("   var target = ocrResult.findText('确定', [0, 0, 1, 1]);");
  122.     printl("   if (target != null) {");
  123.     printl("       printl('找到目标,置信度: ' + target.score());");
  124.     printl("       // target.click(); // 点击中心点");
  125.     printl("       // target.clickRandom(); // 随机点击");
  126.     printl("   }");
  127.    
  128.     printl("\n4. 查找包含特定文本的目标:");
  129.     printl("   var targets = ocrResult.findIncludeTexts('领', [0, 0, 1, 1]);");
  130.     printl("   for (var j = 0; j < targets.length; j++) {");
  131.     printl("       printl('目标区域: ' + targets[j].getRect());");
  132.     printl("       // targets[j].click(); // 执行点击操作");
  133.     printl("   }");
  134. }

  135. // 执行示例
  136. runDetectExample();
  137. detectMethodExamples();
  138. printl("\n脚本执行完成。请根据实际需求修改和使用这些示例代码。");
复制代码








欢迎光临 B2B网络软件 (http://bbs.niubt.cn/) Powered by Discuz! X3.2