 | |  |  | 完整苹果IOS小脚本文本输入与粘贴流程
- /*
- AIWROK 自动化任务 - 文本输入与粘贴流程
- */
- // ==================== 配置 ====================
- var cvFile1 = '图色132334.cv'; // 第一步: 定位并点击应用图标中心点
- var cvFile2 = '图色470275.cv'; // 第二步: 定位并点击编辑区域中心点
- var cvFile3 = '图色646551.cv'; // 第三步: 定位并点击完成按钮中心点
- var testSimilarity = 0.7; // 相似度阈值
- var maxRetryCount = 3; // 最大重试次数
- var waitAfterClick = 2; // 点击后等待秒数
- var loopCount = 3; // 循环次数
- printl("══════════════════════════════════════╗");
- printl("║ 自动化任务: 文本输入与粘贴流程 ║");
- printl("╚══════════════════════════════════════╝");
- printl("");
- // ==================== 辅助函数 ====================
- function findAndClick(cvFileName, description, waitTime) {
- printl("▶ " + description);
- var detects = opencv.findImagesEx(cvFileName);
-
- if (detects != null && detects.length > 0) {
- var rect = detects[0].getRect();
- var score = detects[0].score() * 100;
- printl(" ✓ 找到目标: " + cvFileName);
- printl(" 位置: (" + rect.getCenterX() + ", " + rect.getCenterY() + ")");
- printl(" 相似度: " + score.toFixed(1) + "%");
-
- detects[0].clickRandom();
- printl(" ✓ 已点击");
- sleep.second(秒=waitTime);
- return true;
- } else {
- printl(" ✗ 未找到: " + cvFileName);
- return false;
- }
- }
- function findWithRetry(cvFileName, description, maxRetry) {
- for (var i = 0; i < maxRetry; i++) {
- printl(" 尝试 " + (i + 1) + "/" + maxRetry + "...");
- var detects = opencv.findImagesEx(cvFileName);
-
- if (detects != null && detects.length > 0) {
- var rect = detects[0].getRect();
- printl(" ✓ 第" + (i + 1) + "次成功找到!");
- printl(" 位置: (" + rect.getCenterX() + ", " + rect.getCenterY() + ")");
-
- detects[0].clickRandom();
- printl(" ✓ 已点击");
- sleep.second(秒=waitAfterClick);
- return true;
- }
-
- if (i < maxRetry - 1) {
- sleep.second(秒=1);
- }
- }
-
- printl(" ✗ 重试" + maxRetry + "次后仍未找到");
- return false;
- }
- // ==================== 主流程 ====================
- for (var loop = 1; loop <= loopCount; loop++) {
- printl("");
- printl("━━━━━━━━━━ 第 " + loop + " 轮循环 ━━━━━━━━━━");
- printl("");
-
- // 步骤1: 点击应用图标打开应用
- var step1Success = findAndClick(cvFile1, "步骤1: 点击应用图标", waitAfterClick);
- if (!step1Success) {
- printl("⚠️ 步骤1失败,跳过本轮循环");
- continue;
- }
- printl("");
-
- // 步骤2: 点击编辑区域
- var step2Success = findAndClick(cvFile2, "步骤2: 点击编辑区域", waitAfterClick);
- if (!step2Success) {
- printl("⚠️ 步骤2失败,跳过本轮循环");
- continue;
- }
- printl("");
-
- // 步骤3: 使用画中画复制粘贴功能输入文本
- printl("▶ 步骤3: 使用画中画复制粘贴功能");
- try {
- // 设置要输入的文本内容
- var inputText = "AIWROK自动化测试文本";
-
- // 使用clipboard.copyToClipboard复制到剪贴板
- clipboard.copyToClipboard(inputText);
- printl(" ✓ 已复制文本到剪贴板: " + inputText);
- sleep.second(秒=1);
-
- // 使用hid.paste粘贴内容
- printl(" 执行粘贴操作...");
- hid.paste();
- printl(" ✓ 已完成粘贴操作");
- sleep.second(秒=1);
-
- } catch (e) {
- printl(" ⚠️ 剪贴板操作异常: " + e);
- }
- printl("");
-
- // 步骤4: 点击完成按钮
- var step4Success = findAndClick(cvFile3, "步骤4: 点击完成按钮", waitAfterClick);
- if (!step4Success) {
- printl("⚠️ 步骤4失败,但继续执行");
- }
- printl("");
-
- // 步骤5: 返回iOS主页面
- printl("▶ 步骤5: 返回iOS主页面");
- try {
- // 使用hid.home()返回主页
- printl(" 执行hid.home()返回主页...");
- hid.home();
- printl(" ✓ 已返回iOS主页面");
- sleep.second(秒=waitAfterClick);
- } catch (e) {
- printl(" ⚠️ hid.home()失败,尝试hid.mouseHome()...");
- try {
- hid.mouseHome();
- printl(" ✓ 已使用hid.mouseHome()返回主页");
- sleep.second(秒=waitAfterClick);
- } catch (e2) {
- printl(" ✗ 所有返回方式均失败: " + e2);
- printl(" 请手动返回主页后继续");
- }
- }
- printl("");
-
- printl("━━━━━━━━━━ 第 " + loop + " 轮完成 ━━━━━━━━━━");
- }
- // ==================== 总结 ====================
- printl("");
- printl("═══════════ 全部流程执行完毕 ═══════════");
- printl("");
- printl("📌 执行摘要:");
- printl(" 总循环次数: " + loopCount);
- printl(" 使用的模板文件:");
- printl(" - " + cvFile1 + " (打开应用)");
- printl(" - " + cvFile2 + " (编辑区域)");
- printl(" - " + cvFile3 + " (完成按钮)");
- printl("");
- printl("💡 注意事项:");
- printl(" 1. 确保所有.cv文件在项目资源目录中");
- printl(" 2. 根据实际界面调整粘贴按钮的点击坐标");
- printl(" 3. 可根据需要修改loopCount增加循环次数");
- printl(" 4. 如果找不到图标,降低testSimilarity值");
复制代码
| |  | |  |
|