| |  |  |  |  |  | AIWROK软件IOS苹果系统检测目标类[Detect]方法方法小结
                        ![AIWROK软件IOS苹果系统检测目标类[Detect]方法方法小结 群发软件发帖工具  AIWROK软件IOS苹果系统检测目标类[Detect]方法方法小结 群发软件发帖工具](static/image/common/none.gif)  复制代码// 🔨检测目标类 [Detect] 方法小结
// 第一个方法:📌score 获取检测分数
/*
类别 详情说明
方法功能 获取检测对象的分数
方法签名 Single score ()
返回值 Single
参数 无
*/
// 示例:获取检测对象的分数
var detect = new Detect ();
var score = detect.score (); // 获取检测分数
// 第二个方法:📌getRect 获取检测区域
/*
类别 详情说明
方法功能 获取检测对象的区域(所属模块:获取检测区域)
方法签名 String getRect ()
返回值 String
参数 无
*/
// 示例:获取检测对象的区域信息
var detect = new Detect ();
var rectInfo = detect.getRect (); // 获取检测区域
// 第三个方法:📌clickRandom 随机点击
/*
类别 详情说明
方法功能 随机点击目标的一个坐标
方法签名 Void clickRandom ()
返回值 Void
参数 无
*/
// 示例:随机点击目标区域内的坐标
var detect = new Detect ();
detect.clickRandom (); // 随机点击
// 第四个方法:📌click 点击
/*
类别 详情说明
方法功能 执行点击操作
方法签名 Void click ()
返回值 Void
参数 无
*/
// 示例:对检测目标执行点击操作
new Detect ().click (); // 执行点击
📌score 获取检测分数[size=1em]
 | 类别[size=1em] 
 
 
 | 详情说明[size=1em] 
 
 
 |  | 方法功能[size=1em] 
 
 
 | 获取检测对象的分数[size=1em] 
 
 
 |  | 方法签名[size=1em] 
 
 
 | Single score()[size=1em] 
 
 
 |  | 返回值[size=1em] 
 
 
 | Single[size=1em] 
 
 
 |  | 参数[size=1em] 
 
 
 | 无[size=1em] 
 
 
 |  | 案例[size=1em] 
 
 
 | var detect = new Detect();[size=1em] var score = detect.score(); // 获取检测分数[size=1em]
 
 
 
 | 
 📌getRect 获取检测区域[size=1em]
 | 类别[size=1em] 
 
 
 | 详情说明[size=1em] 
 
 
 |  | 方法功能[size=1em] 
 
 
 | 获取检测对象的文本内容(所属模块:获取检测区域)[size=1em] 
 
 
 |  | 方法签名[size=1em] 
 
 
 | String text()[size=1em] 
 
 
 |  | 返回值[size=1em] 
 
 
 | String[size=1em] 
 
 
 |  | 参数[size=1em] 
 
 
 | 无[size=1em] 
 
 
 |  | 案例[size=1em] 
 
 
 | var detect = new Detect();[size=1em] var detectedText = detect.text(); // 获取检测文本[size=1em]
 
 
 
 | 
 📌clickRandom随机点击[size=1em]
 | 类别[size=1em] 
 
 
 | 详情说明[size=1em] 
 
 
 |  | 方法功能[size=1em] 
 
 
 | 随机点击目标的一个坐标[size=1em] 
 
 
 |  | 方法签名[size=1em] 
 
 
 | Void clickRandom()[size=1em] 
 
 
 |  | 返回值[size=1em] 
 
 
 | Void[size=1em] 
 
 
 |  | 参数[size=1em] 
 
 
 | 无[size=1em] 
 
 
 |  | 案例[size=1em] 
 
 
 | hid.clickRandom();[size=1em] 
 
 
 | 
 📌click点击[size=1em]
 | 类别[size=1em] 
 
 
 | 详情说明[size=1em] 
 
 
 |  | 方法功能[size=1em] 
 
 
 | 执行点击操作[size=1em] 
 
 
 |  | 方法签名[size=1em] 
 
 
 | Void click()[size=1em] 
 
 
 |  | 返回值[size=1em] 
 
 
 | Void[size=1em] 
 
 
 |  | 参数[size=1em] 
 
 
 | 无[size=1em] 
 
 
 |  | 案例[size=1em] 
 
 
 | new Detect().click();[size=1em] 
 
 
 | 
 示例演示:[size=1em]
 复制代码/*
   欢迎使用AiWork安卓自动化IDE
   帮助文档: http://help.autoapp.net.cn
   官方地址: www.aiwork24.com
   qq群: 711841924
*/
// 🔨检测目标类 [Detect] 实际运行示例
// 创建一个可以实际运行的示例
function runDetectExample() {
    printl("开始执行Detect类实际运行示例");
    
    try {
        // 先进行全屏截图
        printl("正在进行屏幕截图...");
        var screenshot = screen.screenShotFull();
        printl("截图完成");
        
        // 使用自带OCR进行文字识别
        printl("正在进行OCR识别...");
        var ocrResult = screenshot.ocr(0, 0, 1, 1);
        printl("OCR识别完成");
        
        // 释放截图资源
        screenshot.close();
        
        // 获取所有识别的文本
        var allText = ocrResult.getAllString();
        printl("识别到的所有文本: " + allText);
        
        // 获取所有识别的目标
        var detects = ocrResult.getAllDetect();
        printl("识别到的目标数量: " + detects.length);
        
        // 遍历所有检测到的目标并演示Detect类的方法
        if (detects.length > 0) {
            for (var i = 0; i < Math.min(detects.length, 3); i++) { // 限制最多处理3个目标
                var detect = detects[i];
                
                printl("\n=== 检测目标 " + (i+1) + " ===");
                
                // 方法一:获取检测分数
                try {
                    var score = detect.score();
                    printl("score()方法 - 检测分数: " + score);
                } catch (e) {
                    printl("score()方法调用失败: " + e.message);
                }
                
                // 方法二:获取检测区域
                try {
                    var rect = detect.getRect();
                    printl("getRect()方法 - 检测区域: " + rect);
                } catch (e) {
                    printl("getRect()方法调用失败: " + e.message);
                }
                
                // 注意:clickRandom()和click()方法会实际执行点击操作,
                // 在没有明确目标的情况下不建议执行,以免影响设备操作
                printl("clickRandom()方法 - 随机点击目标区域(此方法会实际执行点击操作)");
                printl("click()方法 - 点击目标中心点(此方法会实际执行点击操作)");
            }
            
            // 演示查找特定文本并执行点击操作
            printl("\n=== 查找特定文本示例 ===");
            try {
                // 尝试查找常见的UI文本
                var commonTexts = ["确定", "取消", "关闭", "下一步", "完成"];
                var foundTarget = null;
                
                for (var j = 0; j < commonTexts.length; j++) {
                    var textDetect = ocrResult.findText(commonTexts[j], [0, 0, 1, 1]);
                    if (textDetect != null) {
                        foundTarget = textDetect;
                        printl("找到文本 '" + commonTexts[j] + "',分数: " + foundTarget.score());
                        printl("目标区域: " + foundTarget.getRect());
                        break;
                    }
                }
                
                if (foundTarget != null) {
                    printl("演示点击操作 (注意:为避免误操作,实际点击已被注释)");
                    // foundTarget.click(); // 实际点击操作
                    // foundTarget.clickRandom(); // 随机点击操作
                } else {
                    printl("未找到预定义的常见文本");
                }
            } catch (e) {
                printl("查找特定文本时发生错误: " + e.message);
            }
        } else {
            printl("未检测到任何目标");
        }
        
    } catch (e) {
        printl("执行过程中发生错误: " + e.message);
        printl("错误堆栈: " + e.stack);
    }
    
    printl("\nDetect类方法演示完成");
}
// 简化版本的示例,只输出方法调用示例而不实际执行点击
function detectMethodExamples() {
    printl("\n=== Detect类方法调用示例 ===");
    printl("以下是在实际脚本中使用Detect类的典型方式:");
    
    printl("\n1. 基本OCR识别流程:");
    printl("   var screenshot = screen.screenShotFull();");
    printl("   var ocrResult = screenshot.ocr(0, 0, 1, 1);");
    printl("   var detects = ocrResult.getAllDetect();");
    printl("   screenshot.close(); // 释放资源");
    
    printl("\n2. 遍历并分析检测目标:");
    printl("   for (var i = 0; i < detects.length; i++) {");
    printl("       var detect = detects[i];");
    printl("       var score = detect.score();     // 获取置信度");
    printl("       var rect = detect.getRect();    // 获取区域坐标");
    printl("       printl('目标' + i + ' 分数:' + score + ' 区域:' + rect);");
    printl("   }");
    
    printl("\n3. 查找特定文本并操作:");
    printl("   var target = ocrResult.findText('确定', [0, 0, 1, 1]);");
    printl("   if (target != null) {");
    printl("       printl('找到目标,置信度: ' + target.score());");
    printl("       // target.click(); // 点击中心点");
    printl("       // target.clickRandom(); // 随机点击");
    printl("   }");
    
    printl("\n4. 查找包含特定文本的目标:");
    printl("   var targets = ocrResult.findIncludeTexts('领', [0, 0, 1, 1]);");
    printl("   for (var j = 0; j < targets.length; j++) {");
    printl("       printl('目标区域: ' + targets[j].getRect());");
    printl("       // targets[j].click(); // 执行点击操作");
    printl("   }");
}
// 执行示例
runDetectExample();
detectMethodExamples();
printl("\n脚本执行完成。请根据实际需求修改和使用这些示例代码。");
[backcolor=var(--yq-bg-primary)] 
 
 
 
 
 |  |  |  |  |  | 
 |