注册 登录
发贴工具
查看: 6|回复: 0
打印 上一主题 下一主题

[24小时收录超级好的网站] 苹果脚本里HID的5种滑动方法的使用

[复制链接]

2548

主题

2596

帖子

1万

积分

积分
15462
跳转到指定楼层
楼主
苹果脚本里HID的5种滑动方法的使用
苹果脚本里HID的5种滑动方法的使用 群发软件发帖工具

苹果脚本里HID的5种滑动方法的使用 群发软件发帖工具

  1. // AIWROK苹果系统滑动功能综合测试案例
  2. // 🍎交流QQ群711841924群一,苹果内测群,528816639
  3. // 本文件演示所有HID滑动方法的使用

  4. function sleep(ms) {
  5.     var start = new Date().getTime();
  6.     while (new Date().getTime() - start < ms) {
  7.     }
  8. }

  9. function main() {
  10.     printl("========== AIWROK苹果系统滑动功能综合测试 ==========\n");
  11.    
  12.     // 获取屏幕尺寸
  13.     var screenWidth = device.width || 750;
  14.     var screenHeight = device.height || 1334;
  15.     printl("屏幕尺寸: " + screenWidth + "x" + screenHeight);
  16.     printl("");

  17.     demoBasicSwipeMethods();           // 示例1: 基础滑动方法
  18.     demoDirectionalSwipes();           // 示例2: 方向性滑动
  19.     demoPercentSwipes();               // 示例3: 百分比坐标滑动
  20.     demoAdvancedSwipes();              // 示例4: 高级滑动技巧
  21.     demoPracticalSwipeScenarios();     // 示例5: 实用滑动场景
  22.    
  23.     printl("\n========== 所有滑动测试执行完毕 ==========");
  24. }

  25. // ========== 示例1: 基础滑动方法 ==========
  26. function demoBasicSwipeMethods() {
  27.     printl("【示例1】基础滑动方法 hid.swip()");
  28.     printl("说明:使用hid.swip()在任意两点间滑动\n");

  29.     try {
  30.         printl("方式1: 垂直向下滑动(从顶部到底部)");
  31.         // 参数: x1, y1, x2, y2, press, swipTime, delayUp
  32.         hid.swip(375, 200, 375, 1100, 50, 800, 100);
  33.         printl("✓ 垂直向下滑动完成");
  34.         sleep(500);

  35.         printl("方式2: 垂直向上滑动(从底部到顶部)");
  36.         hid.swip(375, 1100, 375, 200, 50, 800, 100);
  37.         printl("✓ 垂直向上滑动完成");
  38.         sleep(500);

  39.         printl("方式3: 水平向右滑动");
  40.         hid.swip(100, 600, 650, 600, 50, 600, 100);
  41.         printl("✓ 水平向右滑动完成");
  42.         sleep(500);

  43.         printl("方式4: 水平向左滑动");
  44.         hid.swip(650, 600, 100, 600, 50, 600, 100);
  45.         printl("✓ 水平向左滑动完成");
  46.         sleep(500);

  47.         printl("方式5: 对角线滑动(左上到右下)");
  48.         hid.swip(100, 200, 650, 1100, 50, 1000, 100);
  49.         printl("✓ 对角线滑动完成");
  50.         sleep(500);

  51.     } catch (e) {
  52.         printl("错误: " + e);
  53.     }
  54.     printl("");
  55. }

  56. // ========== 示例2: 方向性滑动 ==========
  57. function demoDirectionalSwipes() {
  58.     printl("【示例2】方向性滑动方法");
  59.     printl("说明:使用专门的横向/纵向滑动方法\n");

  60.     try {
  61.         printl("方式1: 横向滑动 hid.swipH()");
  62.         // 参数: x1, y, x2, press, swipTime, delayUp
  63.         hid.swipH(100, 600, 650, 50, 600, 100);
  64.         printl("✓ 横向滑动完成(从左到右)");
  65.         sleep(500);

  66.         printl("方式2: 反向横向滑动");
  67.         hid.swipH(650, 600, 100, 50, 600, 100);
  68.         printl("✓ 横向滑动完成(从右到左)");
  69.         sleep(500);

  70.         printl("方式3: 纵向滑动 hid.swipV()");
  71.         // 参数: x, y1, y2, press, swipTime, delayUp
  72.         hid.swipV(375, 200, 1100, 50, 800, 100);
  73.         printl("✓ 纵向滑动完成(从上到下)");
  74.         sleep(500);

  75.         printl("方式4: 反向纵向滑动");
  76.         hid.swipV(375, 1100, 200, 50, 800, 100);
  77.         printl("✓ 纵向滑动完成(从下到上)");
  78.         sleep(500);

  79.     } catch (e) {
  80.         printl("错误: " + e);
  81.     }
  82.     printl("");
  83. }

  84. // ========== 示例3: 百分比坐标滑动 ==========
  85. function demoPercentSwipes() {
  86.     printl("【示例3】百分比坐标滑动方法");
  87.     printl("说明:使用百分比坐标进行滑动,适配不同屏幕尺寸\n");

  88.     try {
  89.         printl("方式1: 百分比横向滑动 hid.swipHPercent()");
  90.         // 参数: x1Percent, yPercent, x2Percent, press, swipTime, delayUp
  91.         hid.swipHPercent(0.1, 0.5, 0.9, 50, 600, 100);
  92.         printl("✓ 百分比横向滑动完成(10%到90%)");
  93.         sleep(500);

  94.         printl("方式2: 反向百分比横向滑动");
  95.         hid.swipHPercent(0.9, 0.5, 0.1, 50, 600, 100);
  96.         printl("✓ 百分比横向滑动完成(90%到10%)");
  97.         sleep(500);

  98.         printl("方式3: 百分比纵向滑动 hid.swipVPercent()");
  99.         // 参数: xPercent, y1Percent, y2Percent, press, swipTime, delayUp
  100.         hid.swipVPercent(0.5, 0.15, 0.85, 50, 800, 100);
  101.         printl("✓ 百分比纵向滑动完成(15%到85%)");
  102.         sleep(500);

  103.         printl("方式4: 反向百分比纵向滑动");
  104.         hid.swipVPercent(0.5, 0.85, 0.15, 50, 800, 100);
  105.         printl("✓ 百分比纵向滑动完成(85%到15%)");
  106.         sleep(500);

  107.         printl("方式5: 短距离百分比滑动");
  108.         hid.swipVPercent(0.5, 0.4, 0.6, 50, 400, 50);
  109.         printl("✓ 短距离百分比滑动完成(小幅滚动)");
  110.         sleep(500);

  111.     } catch (e) {
  112.         printl("错误: " + e);
  113.     }
  114.     printl("");
  115. }

  116. // ========== 示例4: 高级滑动技巧 ==========
  117. function demoAdvancedSwipes() {
  118.     printl("【示例4】高级滑动技巧");
  119.     printl("说明:组合多种参数实现复杂的滑动效果\n");

  120.     try {
  121.         printl("方式1: 快速滑动(短时间)");
  122.         hid.swipVPercent(0.5, 0.2, 0.8, 30, 300, 50);
  123.         printl("✓ 快速滑动完成(300ms)");
  124.         sleep(400);

  125.         printl("方式2: 慢速平滑滑动(长时间)");
  126.         hid.swipVPercent(0.5, 0.2, 0.8, 80, 1500, 150);
  127.         printl("✓ 慢速滑动完成(1500ms)");
  128.         sleep(500);

  129.         printl("方式3: 带按压延迟的滑动");
  130.         hid.swipVPercent(0.5, 0.2, 0.8, 200, 800, 200);
  131.         printl("✓ 带按压延迟的滑动完成");
  132.         sleep(500);

  133.         printl("方式4: 连续滑动演示(3次)");
  134.         for (var i = 0; i < 3; i++) {
  135.             printl("第" + (i+1) + "次滑动...");
  136.             hid.swipVPercent(0.5, 0.3, 0.7, 50, 600, 100);
  137.             sleep(300);
  138.         }
  139.         printl("✓ 连续滑动演示完成");
  140.         sleep(500);

  141.         printl("方式5: Z字形滑动路径");
  142.         // 第一段:右上
  143.         hid.swip(200, 800, 550, 500, 50, 500, 50);
  144.         sleep(200);
  145.         // 第二段:右下
  146.         hid.swip(550, 500, 200, 900, 50, 500, 50);
  147.         sleep(200);
  148.         // 第三段:右上
  149.         hid.swip(200, 900, 550, 400, 50, 500, 50);
  150.         printl("✓ Z字形滑动完成");
  151.         sleep(500);

  152.     } catch (e) {
  153.         printl("错误: " + e);
  154.     }
  155.     printl("");
  156. }

  157. // ========== 示例5: 实用滑动场景 ==========
  158. function demoPracticalSwipeScenarios() {
  159.     printl("【示例5】实用滑动场景");
  160.     printl("说明:模拟实际应用中的滑动操作(全部使用非阻塞方式)\n");

  161.     try {
  162.         printl("场景1: 列表滚动演示(上滑3次)");
  163.         for (var i = 0; i < 3; i++) {
  164.             printl("第" + (i+1) + "次上滑...");
  165.             // 使用非阻塞方式:moveToRealPoint + mouseDown + mouseUp
  166.             hid.moveToRealPoint(375, 934);  // 底部位置 (70%)
  167.             sleep(50);
  168.             hid.mouseDown();
  169.             sleep(50);
  170.             hid.moveToRealPoint(375, 400);  // 顶部位置 (30%)
  171.             sleep(300);
  172.             hid.mouseUp();
  173.             sleep(400);
  174.         }
  175.         printl("✓ 列表滚动演示完成");
  176.         sleep(400);

  177.         printl("场景2: 图片轮播(左右滑动)");
  178.         try {
  179.             // 切换到下一张 - 右滑
  180.             printl("右滑切换到下一张...");
  181.             hid.moveToRealPoint(600, 667);
  182.             sleep(50);
  183.             hid.mouseDown();
  184.             sleep(50);
  185.             hid.moveToRealPoint(150, 667);
  186.             sleep(300);
  187.             hid.mouseUp();
  188.             sleep(300);
  189.             printl("✓ 右滑完成");
  190.             
  191.             // 切换到上一张 - 左滑
  192.             printl("左滑切换到上一张...");
  193.             hid.moveToRealPoint(150, 667);
  194.             sleep(50);
  195.             hid.mouseDown();
  196.             sleep(50);
  197.             hid.moveToRealPoint(600, 667);
  198.             sleep(300);
  199.             hid.mouseUp();
  200.             sleep(300);
  201.             printl("✓ 左滑完成");
  202.             
  203.             printl("✓ 图片轮播演示完成");
  204.         } catch (e) {
  205.             printl("✗ 图片轮播出错: " + e);
  206.         }

  207.         printl("场景3: 下拉刷新");
  208.         try {
  209.             printl("执行下拉刷新动作...");
  210.             // 从顶部向下拉 - 非阻塞方式
  211.             hid.moveToRealPoint(375, 133);   // 顶部 (10%)
  212.             sleep(50);
  213.             hid.mouseDown();
  214.             sleep(50);
  215.             hid.moveToRealPoint(375, 534);   // 中间偏上 (40%)
  216.             sleep(400);
  217.             hid.mouseUp();
  218.             sleep(300);
  219.             printl("✓ 下拉刷新演示完成");
  220.         } catch (e) {
  221.             printl("✗ 下拉刷新出错: " + e);
  222.         }

  223.         printl("场景4: 侧边栏滑出");
  224.         try {
  225.             // 从左侧向右滑 - 打开侧边栏
  226.             printl("右滑打开侧边栏...");
  227.             hid.moveToRealPoint(37, 667);
  228.             sleep(50);
  229.             hid.mouseDown();
  230.             sleep(50);
  231.             hid.moveToRealPoint(375, 667);
  232.             sleep(300);
  233.             hid.mouseUp();
  234.             sleep(300);
  235.             printl("✓ 侧边栏已打开");
  236.             
  237.             // 关闭侧边栏
  238.             printl("左滑关闭侧边栏...");
  239.             hid.moveToRealPoint(375, 667);
  240.             sleep(50);
  241.             hid.mouseDown();
  242.             sleep(50);
  243.             hid.moveToRealPoint(37, 667);
  244.             sleep(300);
  245.             hid.mouseUp();
  246.             sleep(300);
  247.             printl("✓ 侧边栏操作演示完成");
  248.         } catch (e) {
  249.             printl("✗ 侧边栏操作出错: " + e);
  250.         }

  251.         printl("场景5: 页面切换(边缘滑动)");
  252.         try {
  253.             // 从右边缘向左滑(返回上一页)
  254.             printl("边缘左滑返回上一页...");
  255.             hid.moveToRealPoint(712, 667);
  256.             sleep(50);
  257.             hid.mouseDown();
  258.             sleep(50);
  259.             hid.moveToRealPoint(75, 667);
  260.             sleep(300);
  261.             hid.mouseUp();
  262.             sleep(300);
  263.             printl("✓ 页面切换演示完成");
  264.         } catch (e) {
  265.             printl(" 页面切换出错: " + e);
  266.         }

  267.         printl("场景6: 小幅度精确调整演示(5次微调)");
  268.         try {
  269.             for (var i = 0; i < 5; i++) {
  270.                 printl("第" + (i+1) + "次微调...");
  271.                 hid.moveToRealPoint(375, 640);  // 48% 位置
  272.                 sleep(50);
  273.                 hid.mouseDown();
  274.                 sleep(50);
  275.                 hid.moveToRealPoint(375, 694);  // 52% 位置
  276.                 sleep(200);
  277.                 hid.mouseUp();
  278.                 sleep(200);
  279.             }
  280.             printl("✓ 精确调整演示完成");
  281.         } catch (e) {
  282.             printl("✗ 精确调整出错: " + e);
  283.         }
  284.         sleep(500);

  285.     } catch (e) {
  286.         printl("错误: " + e);
  287.     }
  288.     printl("");
  289. }

  290. // ========== 辅助函数 ==========

  291. /**
  292. * 安全的滑动函数,包含错误处理
  293. */
  294. function safeSwipe(x1, y1, x2, y2, description) {
  295.     try {
  296.         printl("执行滑动: " + description);
  297.         hid.swip(x1, y1, x2, y2, 50, 600, 100);
  298.         printl("✓ 滑动成功");
  299.         return true;
  300.     } catch (e) {
  301.         printl("✗ 滑动失败: " + e.message);
  302.         return false;
  303.     }
  304. }

  305. /**
  306. * 批量执行滑动操作
  307. */
  308. function batchSwipe(swipeOperations) {
  309.     printl("批量执行 " + swipeOperations.length + " 个滑动操作");
  310.     var successCount = 0;
  311.    
  312.     for (var i = 0; i < swipeOperations.length; i++) {
  313.         var op = swipeOperations[i];
  314.         printl("执行第 " + (i+1) + " 个操作: " + op.name);
  315.         
  316.         try {
  317.             if (op.type === 'swip') {
  318.                 hid.swip(op.x1, op.y1, op.x2, op.y2, op.press || 50, op.time || 600, op.delay || 100);
  319.             } else if (op.type === 'swipH') {
  320.                 hid.swipH(op.x1, op.y, op.x2, op.press || 50, op.time || 600, op.delay || 100);
  321.             } else if (op.type === 'swipV') {
  322.                 hid.swipV(op.x, op.y1, op.y2, op.press || 50, op.time || 600, op.delay || 100);
  323.             } else if (op.type === 'swipHPercent') {
  324.                 hid.swipHPercent(op.x1, op.y, op.x2, op.press || 50, op.time || 600, op.delay || 100);
  325.             } else if (op.type === 'swipVPercent') {
  326.                 hid.swipVPercent(op.x, op.y1, op.y2, op.press || 50, op.time || 600, op.delay || 100);
  327.             }
  328.             
  329.             successCount++;
  330.             printl("✓ 操作成功");
  331.         } catch (e) {
  332.             printl("✗ 操作失败: " + e.message);
  333.         }
  334.         
  335.         if (i < swipeOperations.length - 1) {
  336.             sleep(800);
  337.         }
  338.     }
  339.    
  340.     printl("批量操作完成,成功: " + successCount + "/" + swipeOperations.length);
  341.     return successCount === swipeOperations.length;
  342. }

  343. /**
  344. * 坐标转换工具
  345. */
  346. function toPercent(x, y) {
  347.     var screenWidth = device.width || 750;
  348.     var screenHeight = device.height || 1334;
  349.     return {
  350.         x: x / screenWidth,
  351.         y: y / screenHeight
  352.     };
  353. }

  354. // 执行主函数
  355. main();
复制代码



unto苹果脚本示例7种不同的OCR识别和点击方法nextnocontent
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关导读了
    采集亚马逊正版群发工具有没有?
    Apr.20旅行X心语今天来说说YYPOST新功能的一个灵活用法,采集亚马逊商品信息,并且获得排名的软件,亚马逊现在越来越多客户做,淘宝的水是越来越清了,以前做电商的客户,现在都转战到外国,最赚钱的要数一些客户往亚马逊里堆了吧,拿我这个YYPOST的客户,最多的是采集,分析排名,刷价格,刷数量,改价,刷访问量等等技术

    企业发展B2B网站有什么东东软件可以发呢
    标题企业发展网B2B软件,现在虽然B2B网站收录不错,可愁的是心急的人们,他们太想一口吃撑胖子了,发帖宣传虽然不能像佛系那样淡定,但也不能像跑火车那般急躁对待,自己内容不收录,完全是自己操作内容问题,可以参考一下别人的内容是怎么弄的,然后自己要试着转变,而且收录这个内容,常常会变化的,不是一种规则就吃到老

    搜房天下房聊软件哪一个好呢
    本帖最后由 发帖软件 于 2019-5-22 16:15 编辑 2搜房天下群发房聊信息软件,开始本来打算做58同城的,但发一个就要一次点触验证码,这就让人没有感觉到存在的价值了吧,都是卖二手房和新房的搜房天下倒是可以发即时聊天信息,也没有发现他这个网站有啥子限制,登陆一个搜房天下账号,然后采集回来分类列表的网址,然后就一

    大家坛有没有好用的群发工具下载呢
    当你的笑容给我礼貌的招呼,大家坛全自动发帖软件,宣传推广是一场持久战,总是有一些人把软件用了一天,或是几个小时,就觉得自己付出太多了,那加进来的粉丝,或是流量,应该是和宣传多少成正比的,其实没有这么便宜的事,就像很多阅读量超过一百万的视频,或是电影,真正会在屏幕打赏的人不会超过三千,真正大额打赏给主

    群发正版软件中国塑料网
    中国塑料网群发软件YYPOST脚本下载地址,这个网站会有一个很奇怪的问题就是你在首页登陆无半个验证码,但在登陆网址登陆就会有一个验证码,所以我们灵活一些,在首页登陆就不用输入验证码了哈。网站秒收录比较高,但发的都是五金和建筑行业,先前有很多人都是发土建工程的大公司操作的,现在这个网站专为那个行业诞生的吧。

    OpenStreetMap网站正版2019年发帖工具下载
    本帖最后由 发帖软件 于 2019-5-21 11:13 编辑 OpenStreetMap网站全自动群发,OpenStreetMapOpenStreetMap(简称OSM,中文是公开地图)是一个网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图。有的人编辑地图然后等收录,有的人发日志等收录,我们这里也是利用地图日志做为宣传的目标,简单的脚本理

    搜房天下全自动收短信全自动识别验证码注册账号软件
    房天下自动注册机,这个脚本是前几天发房聊的脚本廷伸品种,这个脚本能做到自动注册账号,自动保存账号,自动发房聊的效果,不过今天我们主要说一说怎么注册账号写脚本吧,这个搜房天天下的账号,可以发提问,可以发房聊,发论坛,发博客,还有发个人中心页都是有秒收的效果的,这样就省去了去买号,去乱花钱的效果了吧,而

    企业邮箱安卓端有什么APP软件可以发的呢
    请输入标题企业邮箱安卓发发送邮箱脚本,这个脚本是利用企业邮箱进行群发的,全程是一种模拟手工操作的过程,所以封号是很少的,而且企业邮箱群发到普通QQ邮箱不容易进垃圾箱中的,所以这个脚本也是这样的原理,不过最好是利用一些多开器,登陆多点的QQ邮箱账号会比较流畅一些,然后用软件一个一个的切换APP进行群发邮件会

    头条留评论软件有没有好用的呢?
    今天整一个今日头条留言软件,对于留言YYPOST是优势是比较大的存在,因为他往往专注一些下拉定位的优点,像今日头条这样,还是需要一些特殊下拉定位的,因为他新闻有长有短,有图有视频的,所以综合起来定位是比较难的,如果用POST也不是很轻松可以破解他的加密参数。这个脚本也是有一个不好的地方就是换号会比较麻烦,您电

    单网页生成神器
    最近新技术,网页生成机占领了整个网络的半壁江山,效果很疯狂,虽然不知道能持续多久,作为开发软件的领头者,一直在找收录的方法,一直在努力创新着,一直被人模仿,却从没有被超越过,这个网页生成机,已经出来有一段时间了,一直没有拿出来分享,醉过醉过,它是利用的一些小小收录漏洞整的,您最好用一些老站域名,进行

关闭
快速回复 返回列表 返回顶部
本站自动发贴软件,是现在最流行的做脚本软件,这种发贴工具,不但发贴收录快,而且抢占好的先机,完全自由编辑,实现针对性群发模拟操作,软件可以顶贴,也可以发贴,可以兼容支持Discuz、PHPWind、Dvbbs三大主流论坛,有手机验证码收件,邮件收发的功能,支持验证码识别,注册问题识别,多线程任务,自动上传头像,自动激活注册邮件,兼容防注册插件,本站软件原创正版,更新效率最快的原创软件。 『网络推广软件』『自动发帖软件』『 自动发帖