B2BÍøÂçÈí¼þ

 ÕÒ»ØÃÜÂë
 Á¢¼´×¢²á ÉóºËÍøÕ¾ºÅ:QQ:896757558
ËÑË÷
²é¿´: 1|»Ø¸´: 0
´òÓ¡ ÉÏÒ»Ö÷Ìâ ÏÂÒ»Ö÷Ìâ

×Ô¶¯°Ù¶ÈÌù°ÉʾÀý

[¸´ÖÆÁ´½Ó]

1129

Ö÷Ìâ

1134

Ìû×Ó

7793

»ý·Ö

abc

Rank: 9Rank: 9Rank: 9

»ý·Ö
7793
Ìø×ªµ½Ö¸¶¨Â¥²ã
Â¥Ö÷

×Ô¶¯°Ù¶ÈÌù°ÉʾÀý
×Ô¶¯°Ù¶ÈÌù°ÉʾÀý B2BÍøÂçÈí¼þ

  1. // AIWROK ÍêÕû×Ô¶¯»¯Á÷³Ì£ºÆô¶¯°Ù¶ÈÌù°É ¡ú µã»÷·¢Ìû ¡ú Ñ¡Ôñ°É ¡ú ÊäÈë±êÌâºÍÄÚÈÝ ¡ú ·¢²¼
  2. // È«³ÌʹÓà agent ·½Ê½²Ù×÷£¬²»ÒÀÀµÎÞÕϰ­È¨ÏÞ


  3. print.log("===== °Ù¶ÈÌù°É·¢ÌûÁ÷³ÌÆô¶¯ =====");
  4. print.time();

  5. // ========== ÅäÖÃÇø ==========
  6. var APP°üÃû = "com.baidu.tieba";

  7. var Ñ­»·´ÎÊý = 1;
  8. var µ±Ç°Ñ­»· = 0;

  9. var ·¢²¼±êÌâÁбí = [
  10.     "ÕâÊÇÒ»¸ö²âÊÔ±êÌâ",
  11.     "·ÖÏíһϽñÌìµÄÐÄÇé",
  12.     "À´ÌÖÂÛÒ»ÏÂÈÈÃÅ»°Ìâ"
  13. ];

  14. var ·¢²¼ÄÚÈÝÁбí = [
  15.     "ÎÞÁÄ£¬¾Í·¢Ò»·¢Ìû×Ó¿´¿´ÓÐʲôºÃÍæµÄ¡£",
  16.     "½ñÌìÌìÆø²»´í£¬·ÖÏíÒ»¸öÈÕ³£¡«",
  17.     "¼Ç¼Éú»îÖеÄСÃÀºÃ£¬»¶Ó­´ó¼ÒÒ»ÆðÌÖÂÛ£¡"
  18. ];

  19. var ÄÚÈÝË÷Òý = 0;

  20. // ========== »ñÈ¡É豸ÐÅÏ¢ ==========
  21. var ÆÁÄ»¿í = screen.getScreenWidth();
  22. var ÆÁÄ»¸ß = screen.getScreenHeight();
  23. print.log("ÆÁÄ»³ß´ç£º" + ÆÁÄ»¿í + " x " + ÆÁÄ»¸ß);
  24. print.log("´úÀí״̬£º" + (agent.isOpen() ? "ÒÑ¿ªÆô" : "먦Æô"));

  25. // ========== ¹¤¾ßº¯Êý ==========
  26. function »ñÈ¡XML() {
  27.     var raw = agent.shell("uiautomator dump --compressed /proc/self/fd/1 2>/dev/null");
  28.     var rawStr = "" + raw;
  29.     var startIdx = rawStr.indexOf("<?xml");
  30.     var endIdx = rawStr.indexOf("</hierarchy>");
  31.     if (startIdx !== -1 && endIdx !== -1) {
  32.         return rawStr.substring(startIdx, endIdx + 13);
  33.     }
  34.     return rawStr;
  35. }

  36. function ²éÕÒ½ÚµãÖÐÐÄ(xml, text) {
  37.     var idx = ("" + xml).indexOf('text="' + text + '"');
  38.     if (idx === -1) {
  39.         idx = ("" + xml).indexOf("text='" + text + "'");
  40.     }
  41.     if (idx === -1) {
  42.         return null;
  43.     }
  44.     var ºóÃæ = ("" + xml).substring(idx);
  45.     var m = ºóÃæ.match(/bounds="\[(\d+),(\d+)\]\[(\d+),(\d+)\]"/);
  46.     if (!m) {
  47.         m = ºóÃæ.match(/bounds='\[(\d+),(\d+)\]\[(\d+),(\d+)\]'/);
  48.     }
  49.     if (!m) {
  50.         return null;
  51.     }
  52.     var x1 = parseInt(m[1]);
  53.     var y1 = parseInt(m[2]);
  54.     var x2 = parseInt(m[3]);
  55.     var y2 = parseInt(m[4]);
  56.     return {
  57.         x: (x1 + x2) / 2,
  58.         y: (y1 + y2) / 2
  59.     };
  60. }

  61. function ²éÕÒÊäÈë¿òÖÐÐÄ(xml, hintText) {
  62.     var xmlStr = "" + xml;

  63.     var editTextPattern = /<node[^>]*?class="android\.widget\.EditText"[^>]*?\/>/g;
  64.     var match;
  65.     while ((match = editTextPattern.exec(xmlStr)) !== null) {
  66.         var nodeStr = match[0];
  67.         var textMatch = nodeStr.match(/text="([^"]*)"/);
  68.         if (!textMatch) {
  69.             textMatch = nodeStr.match(/text='([^']*)'/);
  70.         }
  71.         if (textMatch && textMatch[1].indexOf(hintText) !== -1) {
  72.             var boundsMatch = nodeStr.match(/bounds="\[(\d+),(\d+)\]\[(\d+),(\d+)\]"/);
  73.             if (!boundsMatch) {
  74.                 boundsMatch = nodeStr.match(/bounds='\[(\d+),(\d+)\]\[(\d+),(\d+)\]'/);
  75.             }
  76.             if (boundsMatch) {
  77.                 var x1 = parseInt(boundsMatch[1]);
  78.                 var y1 = parseInt(boundsMatch[2]);
  79.                 var x2 = parseInt(boundsMatch[3]);
  80.                 var y2 = parseInt(boundsMatch[4]);
  81.                 return {
  82.                     x: (x1 + x2) / 2,
  83.                     y: (y1 + y2) / 2
  84.                 };
  85.             }
  86.         }
  87.     }

  88.     var textPattern = new RegExp('text="([^"]*?' + hintText + '[^"]*)"', 'g');
  89.     while ((match = textPattern.exec(xmlStr)) !== null) {
  90.         var afterText = xmlStr.substring(match.index);
  91.         var boundsMatch = afterText.match(/bounds="\[(\d+),(\d+)\]\[(\d+),(\d+)\]"/);
  92.         if (!boundsMatch) {
  93.             boundsMatch = afterText.match(/bounds='\[(\d+),(\d+)\]\[(\d+),(\d+)\]'/);
  94.         }
  95.         if (boundsMatch) {
  96.             var x1 = parseInt(boundsMatch[1]);
  97.             var y1 = parseInt(boundsMatch[2]);
  98.             var x2 = parseInt(boundsMatch[3]);
  99.             var y2 = parseInt(boundsMatch[4]);
  100.             return {
  101.                 x: (x1 + x2) / 2,
  102.                 y: (y1 + y2) / 2
  103.             };
  104.         }
  105.     }

  106.     return null;
  107. }

  108. function ²éÕÒRecyclerViewµÚÒ»¸öÌõÄ¿(xml) {
  109.     var xmlStr = "" + xml;
  110.     var pattern = /class="androidx\.recyclerview\.widget\.RecyclerView"[^>]*?bounds="\[(\d+),(\d+)\]\[(\d+),(\d+)\]"/;
  111.     var match = xmlStr.match(pattern);
  112.     if (!match) {
  113.         pattern = /class='androidx\.recyclerview\.widget\.RecyclerView'[^>]*?bounds='\[(\d+),(\d+)\]\[(\d+),(\d+)\]'/;
  114.         match = xmlStr.match(pattern);
  115.     }

  116.     if (match) {
  117.         var rvX1 = parseInt(match[1]);
  118.         var rvY1 = parseInt(match[2]);
  119.         var rvX2 = parseInt(match[3]);
  120.         var rvY2 = parseInt(match[4]);

  121.         var rvCenterX = (rvX1 + rvX2) / 2;
  122.         var rvTopY = rvY1 + 200;

  123.         return {
  124.             x: rvCenterX,
  125.             y: rvTopY
  126.         };
  127.     }

  128.     return null;
  129. }

  130. function ²éÕҵײ¿µ¼º½Öм䰴ť(xml) {
  131.     var pattern = /<node\s[^>]*?index="3"[^>]*?class="android\.widget\.FrameLayout"[^>]*?bounds="\[(\d+),(\d+)\]\[(\d+),(\d+)\]"/g;
  132.     var match;
  133.     while ((match = pattern.exec(xml)) !== null) {
  134.         var x1 = parseInt(match[1]);
  135.         var y1 = parseInt(match[2]);
  136.         var x2 = parseInt(match[3]);
  137.         var y2 = parseInt(match[4]);
  138.         var centerY = (y1 + y2) / 2;
  139.         if (centerY > ÆÁÄ»¸ß * 0.8) {
  140.             return {
  141.                 x: (x1 + x2) / 2,
  142.                 y: centerY
  143.             };
  144.         }
  145.     }

  146.     var pattern2 = /NAF="true"[^>]*?bounds="\[(\d+),(\d+)\]\[(\d+),(\d+)\]"/g;
  147.     while ((match = pattern2.exec(xml)) !== null) {
  148.         var x1 = parseInt(match[1]);
  149.         var y1 = parseInt(match[2]);
  150.         var x2 = parseInt(match[3]);
  151.         var y2 = parseInt(match[4]);
  152.         var centerX = (x1 + x2) / 2;
  153.         var centerY = (y1 + y2) / 2;
  154.         if (centerY > ÆÁÄ»¸ß * 0.85 && centerX > ÆÁÄ»¿í * 0.3 && centerX < ÆÁÄ»¿í * 0.7) {
  155.             return {
  156.                 x: centerX,
  157.                 y: centerY
  158.             };
  159.         }
  160.     }

  161.     return null;
  162. }

  163. function ÉèÖÃADBÊäÈë·¨() {
  164.     try {
  165.         var µ±Ç°ÊäÈë·¨ = ("" + agent.shell("settings get secure default_input_method")).trim();
  166.         print.log("µ±Ç°Ä¬ÈÏÊäÈë·¨£º" + µ±Ç°ÊäÈë·¨);
  167.         
  168.         var adbKeyboard = "com.android.adbkeyboard/.AdbIME";
  169.         if (µ±Ç°ÊäÈë·¨.indexOf("adbkeyboard") === -1) {
  170.             print.log("µ±Ç°²»ÊÇADBÊäÈë·¨£¬³¢ÊÔÇл»");
  171.             agent.shell("ime enable " + adbKeyboard);
  172.             sleep.millisecond(ºÁÃë = 300);
  173.             agent.shell("ime set " + adbKeyboard);
  174.             sleep.millisecond(ºÁÃë = 500);
  175.             print.log("✓ ÒÑÇл»µ½ADBÊäÈë·¨");
  176.         } else {
  177.             print.log("✓ µ±Ç°ÒÑÊÇADBÊäÈë·¨");
  178.         }
  179.     } catch (e) {
  180.         print.log("⚠ ÉèÖÃADBÊäÈ뷨ʧ°Ü£º" + e.message);
  181.         print.log("Ìáʾ£ºÇëÊÖ¶¯°²×°ADB Keyboard²¢ÉèÖÃΪĬÈÏÊäÈë·¨");
  182.     }
  183. }

  184. function ÊäÈëÎı¾(content, x, y) {
  185.     var Õ³Ìù³É¹¦ = false;

  186.     agent.click(Math.floor(x), Math.floor(y));
  187.     sleep.second(Ãë = 1);

  188.     agent.shell("service call clipboard 4 i32 1 s16 '" + content + "' i32 0");
  189.     sleep.millisecond(ºÁÃë = 300);
  190.     agent.shell("service call clipboard 3 i32 1 s16 '" + content + "' i32 0");
  191.     sleep.millisecond(ºÁÃë = 300);
  192.     Clipboard.copy(content);
  193.     sleep.millisecond(ºÁÃë = 300);

  194.     print.log("✓ ¼ôÌù°åÒÑÉèÖÃÄÚÈÝ");

  195.     agent.shell("input keyevent 279");
  196.     sleep.second(Ãë = 1);
  197.     var xmlA = »ñÈ¡XML();
  198.     if (xmlA.indexOf(content.substring(0, 2)) !== -1) {
  199.         Õ³Ìù³É¹¦ = true;
  200.         print.log("✓ KEYCODE_PASTE Õ³Ìù³É¹¦");
  201.     }

  202.     if (!Õ³Ìù³É¹¦) {
  203.         agent.shell("input keyevent 50 --meta 0x1000");
  204.         sleep.second(Ãë = 1);
  205.         var xmlB = »ñÈ¡XML();
  206.         if (xmlB.indexOf(content.substring(0, 2)) !== -1) {
  207.             Õ³Ìù³É¹¦ = true;
  208.             print.log("✓ Ctrl+V Õ³Ìù³É¹¦");
  209.         }
  210.     }

  211.     if (!Õ³Ìù³É¹¦) {
  212.         var ³¤°´ÃüÁî = "input swipe " + Math.floor(x) + " " + Math.floor(y) + " " + (Math.floor(x) + 1) + " " + (Math.floor(y) + 1) + " 2000";
  213.         agent.shell(³¤°´ÃüÁî);
  214.         sleep.second(Ãë = 2);

  215.         var xmlC = »ñÈ¡XML();
  216.         var ¹Ø¼ü´Ê = ["Õ³Ìù", "Paste", "paste"];
  217.         for (var i = 0; i < ¹Ø¼ü´Ê.length; i++) {
  218.             if (xmlC.indexOf(¹Ø¼ü´Ê[i]) !== -1) {
  219.                 var ºóÃæ = xmlC.substring(xmlC.indexOf(¹Ø¼ü´Ê[i]));
  220.                 var m = ºóÃæ.match(/bounds="\[(\d+),(\d+)\]\[(\d+),(\d+)\]"/);
  221.                 if (!m) {
  222.                     m = ºóÃæ.match(/bounds='\[(\d+),(\d+)\]\[(\d+),(\d+)\]'/);
  223.                 }
  224.                 if (m) {
  225.                     var cx = (parseInt(m[1]) + parseInt(m[3])) / 2;
  226.                     var cy = (parseInt(m[2]) + parseInt(m[4])) / 2;
  227.                     agent.click(cx, cy);
  228.                     Õ³Ìù³É¹¦ = true;
  229.                     print.log("✓ ³¤°´Õ³Ìù³É¹¦");
  230.                     break;
  231.                 }
  232.             }
  233.         }
  234.     }

  235.     if (!Õ³Ìù³É¹¦) {
  236.         print.log("✗ ËùÓÐÕ³Ìù·½Ê½¾ùδ³É¹¦");
  237.     }

  238.     return Õ³Ìù³É¹¦;
  239. }

  240. // ========================================
  241. // Ö÷Ñ­»·¿ªÊ¼
  242. // ========================================
  243. for (µ±Ç°Ñ­»· = 1; Ñ­»·´ÎÊý == 0 || µ±Ç°Ñ­»· <= Ñ­»·´ÎÊý; µ±Ç°Ñ­»·++) {
  244.     if (Ñ­»·´ÎÊý > 0) {
  245.         print.log("\n======================================");
  246.         print.log("===== µÚ " + µ±Ç°Ñ­»· + " / " + Ñ­»·´ÎÊý + " ´ÎÑ­»· =====");
  247.         print.log("======================================");
  248.     } else {
  249.         print.log("\n======================================");
  250.         print.log("===== µÚ " + µ±Ç°Ñ­»· + " ´ÎÑ­»·£¨ÎÞÏÞģʽ£©=====");
  251.         print.log("======================================");
  252.     }

  253.     var ·¢²¼±êÌâ = ·¢²¼±êÌâÁбí[ÄÚÈÝË÷Òý % ·¢²¼±êÌâÁбí.length];
  254.     var ·¢²¼ÄÚÈÝ = ·¢²¼ÄÚÈÝÁбí[ÄÚÈÝË÷Òý % ·¢²¼ÄÚÈÝÁбí.length];
  255.     ÄÚÈÝË÷Òý++;

  256.     print.log("±¾´Î·¢²¼±êÌ⣺" + ·¢²¼±êÌâ);
  257.     print.log("±¾´Î·¢²¼ÄÚÈÝ£º" + ·¢²¼ÄÚÈÝ);

  258.     // ========================================
  259.     // ²½Öè1£ºÆô¶¯°Ù¶ÈÌù°É
  260.     // ========================================
  261.     print.log("\n========== ²½Öè1£ºÆô¶¯°Ù¶ÈÌù°É ==========");
  262.     try {
  263.         app.openApp(APP°üÃû);
  264.         print.log("✓ ÒÑÆô¶¯°Ù¶ÈÌù°É");
  265.     } catch (e) {
  266.         print.log("✗ Æô¶¯Ê§°Ü£º" + e.message);
  267.     }
  268.     sleep.second(Ãë = 5);

  269.     // ========================================
  270.     // ²½Öè2£ºÉèÖÃADBÊäÈë·¨£¨Ö§³ÖÖÐÎÄÊäÈ룩
  271.     // ========================================
  272.     print.log("\n========== ²½Öè2£ºÉèÖÃADBÊäÈë·¨ ==========");
  273.     ÉèÖÃADBÊäÈë·¨();

  274.     // ========================================
  275.     // ²½Öè3£ºµã»÷µ×²¿µ¼º½ÖмäµÄ¼ÓºÅ°´Å¥
  276.     // ========================================
  277.     print.log("\n========== ²½Öè3£ºµã»÷µ×²¿µ¼º½ÖмäµÄ¼ÓºÅ°´Å¥ ==========");
  278.     var ¼ÓºÅ°´Å¥µã»÷³É¹¦ = false;

  279.     for (var i = 0; i < 5; i++) {
  280.         var xml2 = »ñÈ¡XML();
  281.         print.log("  ÕýÔÚɨÃè½çÃæ...");

  282.         var ¼ÓºÅ°´Å¥Î»Öà = ²éÕҵײ¿µ¼º½Öм䰴ť(xml2);
  283.         if (¼ÓºÅ°´Å¥Î»ÖÃ) {
  284.             print.log("  ✓ ÕÒµ½µ×²¿µ¼º½Öм䰴ť£º(" + Math.floor(¼ÓºÅ°´Å¥Î»ÖÃ.x) + ", " + Math.floor(¼ÓºÅ°´Å¥Î»ÖÃ.y) + ")");
  285.             agent.click(Math.floor(¼ÓºÅ°´Å¥Î»ÖÃ.x), Math.floor(¼ÓºÅ°´Å¥Î»ÖÃ.y));
  286.             ¼ÓºÅ°´Å¥µã»÷³É¹¦ = true;
  287.             sleep.second(Ãë = 3);

  288.             var xml2b = »ñÈ¡XML();
  289.             var ·¢²¼Ìù×ÓÑ¡ÏîλÖà = ²éÕÒ½ÚµãÖÐÐÄ(xml2b, "·¢²¼Ìù×Ó");
  290.             if (·¢²¼Ìù×ÓÑ¡ÏîλÖÃ) {
  291.                 print.log("  ✓ ÕÒµ½·¢²¼Ìù×ÓÑ¡Ïî");
  292.                 agent.click(Math.floor(·¢²¼Ìù×ÓÑ¡ÏîλÖÃ.x), Math.floor(·¢²¼Ìù×ÓÑ¡ÏîλÖÃ.y));
  293.                 print.log("✓ ÒѽøÈë·¢²¼Ìù×ÓÒ³Ãæ");
  294.             }
  295.             break;
  296.         }

  297.         sleep.second(Ãë = 2);
  298.     }

  299.     if (!¼ÓºÅ°´Å¥µã»÷³É¹¦) {
  300.         print.log("⚠ δÕÒµ½¼ÓºÅ°´Å¥£¬Ê¹ÓðٷֱÈ×ø±ê");
  301.         agent.clickPercent(0.5, 0.96);
  302.         sleep.second(Ãë = 3);

  303.         var xml2c = »ñÈ¡XML();
  304.         var ·¢²¼Ìù×ÓÑ¡ÏîλÖà = ²éÕÒ½ÚµãÖÐÐÄ(xml2c, "·¢²¼Ìù×Ó");
  305.         if (·¢²¼Ìù×ÓÑ¡ÏîλÖÃ) {
  306.             print.log("  ✓ ÕÒµ½·¢²¼Ìù×ÓÑ¡Ïî");
  307.             agent.click(Math.floor(·¢²¼Ìù×ÓÑ¡ÏîλÖÃ.x), Math.floor(·¢²¼Ìù×ÓÑ¡ÏîλÖÃ.y));
  308.             print.log("✓ ÒѽøÈë·¢²¼Ìù×ÓÒ³Ãæ");
  309.         }
  310.     }

  311.     // ========================================
  312.     // ²½Öè4£ºÑ¡Ôñ°É
  313.     // ========================================
  314.     print.log("\n========== ²½Öè4£ºÑ¡Ôñ°É ==========");
  315.     var Ñ¡Ôñ°ÉÍê³É = false;
  316.     var ÒѾ­µã»÷Ñ¡Ôñ°É = false;

  317.     for (var j = 0; j < 5; j++) {
  318.         var xml3 = »ñÈ¡XML();

  319.         if (xml3.indexOf("×î½ü¹äµÄ°É") !== -1 || xml3.indexOf("¹Ø×¢µÄ°É") !== -1) {
  320.             var µÚÒ»¸ö°ÉλÖà = ²éÕÒRecyclerViewµÚÒ»¸öÌõÄ¿(xml3);
  321.             if (µÚÒ»¸ö°ÉλÖÃ) {
  322.                 print.log("  ✓ Ñ¡ÔñÁбíÖеÚÒ»¸ö°É£º(" + Math.floor(µÚÒ»¸ö°ÉλÖÃ.x) + ", " + Math.floor(µÚÒ»¸ö°ÉλÖÃ.y) + ")");
  323.                 agent.click(Math.floor(µÚÒ»¸ö°ÉλÖÃ.x), Math.floor(µÚÒ»¸ö°ÉλÖÃ.y));
  324.                 sleep.second(Ãë = 3);
  325.                 Ñ¡Ôñ°ÉÍê³É = true;
  326.                 break;
  327.             }
  328.         }

  329.         var Ñ¡Ôñ°ÉλÖà = ²éÕÒ½ÚµãÖÐÐÄ(xml3, "Ñ¡Ôñ°É");
  330.         if (Ñ¡Ôñ°ÉλÖà && !ÒѾ­µã»÷Ñ¡Ôñ°É) {
  331.             print.log("  ✓ ÕÒµ½Ñ¡Ôñ°É£º(" + Math.floor(Ñ¡Ôñ°ÉλÖÃ.x) + ", " + Math.floor(Ñ¡Ôñ°ÉλÖÃ.y) + ")");
  332.             agent.click(Math.floor(Ñ¡Ôñ°ÉλÖÃ.x), Math.floor(Ñ¡Ôñ°ÉλÖÃ.y));
  333.             ÒѾ­µã»÷Ñ¡Ôñ°É = true;
  334.             sleep.second(Ãë = 3);
  335.         } else if (xml3.indexOf("·¢²¼Ìù×Ó") !== -1) {
  336.             print.log("✓ ÒÑÔÚ·¢²¼Ò³Ã棨¿ÉÄÜÒÑÑ¡°É£©");
  337.             Ñ¡Ôñ°ÉÍê³É = true;
  338.             break;
  339.         }

  340.         sleep.second(Ãë = 2);
  341.     }

  342.     if (!Ñ¡Ôñ°ÉÍê³É) {
  343.         print.log("⚠ Ìø¹ýÑ¡Ôñ°É²½Öè");
  344.     }

  345.     // ========================================
  346.     // ²½Öè5£ºÊäÈë±êÌâ
  347.     // ========================================
  348.     print.log("\n========== ²½Öè5£ºÊäÈë±êÌâ ==========");
  349.     var ±êÌâÊäÈë³É¹¦ = false;

  350.     for (var k = 0; k < 5; k++) {
  351.         var xml4 = »ñÈ¡XML();

  352.         var ±êÌâÊäÈë¿òλÖà = ²éÕÒÊäÈë¿òÖÐÐÄ(xml4, "ÇëÊäÈëÍêÕûÌù×Ó±êÌâ");
  353.         if (!±êÌâÊäÈë¿òλÖÃ) {
  354.             ±êÌâÊäÈë¿òλÖà = ²éÕÒÊäÈë¿òÖÐÐÄ(xml4, "ÍêÕûÌù×Ó±êÌâ");
  355.         }
  356.         if (!±êÌâÊäÈë¿òλÖÃ) {
  357.             ±êÌâÊäÈë¿òλÖà = ²éÕÒÊäÈë¿òÖÐÐÄ(xml4, "±êÌâ");
  358.         }

  359.         if (±êÌâÊäÈë¿òλÖÃ) {
  360.             print.log("  ✓ ÕÒµ½±êÌâÊäÈë¿ò£º(" + Math.floor(±êÌâÊäÈë¿òλÖÃ.x) + ", " + Math.floor(±êÌâÊäÈë¿òλÖÃ.y) + ")");

  361.             var Õ³Ìù½á¹û = ÊäÈëÎı¾(·¢²¼±êÌâ, ±êÌâÊäÈë¿òλÖÃ.x, ±êÌâÊäÈë¿òλÖÃ.y);
  362.             if (Õ³Ìù½á¹û) {
  363.                 print.log("✓ ±êÌâÊäÈë³É¹¦");
  364.                 ±êÌâÊäÈë³É¹¦ = true;
  365.             } else {
  366.                 print.log("✗ ±êÌâÊäÈëʧ°Ü");
  367.             }
  368.             break;
  369.         }

  370.         sleep.second(Ãë = 2);
  371.     }

  372.     if (!±êÌâÊäÈë³É¹¦) {
  373.         print.log("✗ ±êÌâÊäÈëʧ°Ü");
  374.     }

  375.     // ========================================
  376.     // ²½Öè6£ºÊäÈëÄÚÈÝ
  377.     // ========================================
  378.     print.log("\n========== ²½Öè6£ºÊäÈëÄÚÈÝ ==========");
  379.     var ÄÚÈÝÊäÈë³É¹¦ = false;

  380.     for (var l = 0; l < 5; l++) {
  381.         var xml5 = »ñÈ¡XML();

  382.         var ÄÚÈÝÊäÈë¿òλÖà = ²éÕÒÊäÈë¿òÖÐÐÄ(xml5, "À´°É£¬¾¡Çé·¢»Ó°É");
  383.         if (!ÄÚÈÝÊäÈë¿òλÖÃ) {
  384.             ÄÚÈÝÊäÈë¿òλÖà = ²éÕÒÊäÈë¿òÖÐÐÄ(xml5, "¾¡Çé·¢»Ó");
  385.         }
  386.         if (!ÄÚÈÝÊäÈë¿òλÖÃ) {
  387.             ÄÚÈÝÊäÈë¿òλÖà = ²éÕÒÊäÈë¿òÖÐÐÄ(xml5, "ÇëÊäÈëÄÚÈÝ");
  388.         }

  389.         if (ÄÚÈÝÊäÈë¿òλÖÃ) {
  390.             print.log("  ✓ ÕÒµ½ÄÚÈÝÊäÈë¿ò£º(" + Math.floor(ÄÚÈÝÊäÈë¿òλÖÃ.x) + ", " + Math.floor(ÄÚÈÝÊäÈë¿òλÖÃ.y) + ")");

  391.             var Õ³Ìù½á¹û = ÊäÈëÎı¾(·¢²¼ÄÚÈÝ, ÄÚÈÝÊäÈë¿òλÖÃ.x, ÄÚÈÝÊäÈë¿òλÖÃ.y);
  392.             if (Õ³Ìù½á¹û) {
  393.                 print.log("✓ ÄÚÈÝÊäÈë³É¹¦");
  394.                 ÄÚÈÝÊäÈë³É¹¦ = true;
  395.             } else {
  396.                 print.log("✗ ÄÚÈÝÊäÈëʧ°Ü");
  397.             }
  398.             break;
  399.         }

  400.         sleep.second(Ãë = 2);
  401.     }

  402.     if (!ÄÚÈÝÊäÈë³É¹¦) {
  403.         print.log("✗ ÄÚÈÝÊäÈëʧ°Ü");
  404.     }

  405.     // ========================================
  406.     // ²½Öè7£ºµã»÷·¢²¼
  407.     // ========================================
  408.     print.log("\n========== ²½Öè7£ºµã»÷·¢²¼ ==========");
  409.     var ·¢²¼³É¹¦ = false;

  410.     for (var m = 0; m < 5; m++) {
  411.         var xml6 = »ñÈ¡XML();

  412.         var ·¢²¼°´Å¥Î»Öà = ²éÕÒ½ÚµãÖÐÐÄ(xml6, "·¢²¼");
  413.         if (·¢²¼°´Å¥Î»ÖÃ) {
  414.             print.log("  ✓ ÕÒµ½·¢²¼°´Å¥£º(" + Math.floor(·¢²¼°´Å¥Î»ÖÃ.x) + ", " + Math.floor(·¢²¼°´Å¥Î»ÖÃ.y) + ")");
  415.             agent.click(Math.floor(·¢²¼°´Å¥Î»ÖÃ.x), Math.floor(·¢²¼°´Å¥Î»ÖÃ.y));
  416.             sleep.second(Ãë = 3);

  417.             var xml6b = »ñÈ¡XML();
  418.             if (xml6b.indexOf("·¢²¼³É¹¦") !== -1 || xml6b.indexOf("Ìû×ÓÒÑ·¢²¼") !== -1) {
  419.                 print.log("✓ Ìû×Ó·¢²¼³É¹¦");
  420.                 ·¢²¼³É¹¦ = true;
  421.             } else if (xml6b.indexOf("·¢²¼Ìù×Ó") === -1) {
  422.                 print.log("✓ ÒÑÀ뿪·¢²¼Ò³Ã棬·¢²¼Á÷³ÌÍê³É");
  423.                 ·¢²¼³É¹¦ = true;
  424.             } else {
  425.                 print.log("⚠ ·¢²¼°´Å¥µã»÷ºóÒ³ÃæÎ´±ä»¯");
  426.             }
  427.             break;
  428.         }

  429.         sleep.second(Ãë = 2);
  430.     }

  431.     if (!·¢²¼³É¹¦) {
  432.         print.log("✗ ·¢²¼Ê§°Ü");
  433.     }

  434.     // ========================================
  435.     // ²½Öè8£º¹Ø±ÕAPP
  436.     // ========================================
  437.     print.log("\n========== ²½Öè8£º¹Ø±ÕAPP ==========");
  438.     try {
  439.         agent.shell("am force-stop " + APP°üÃû);
  440.         print.log("✓ ÒѹرհٶÈÌù°É");
  441.     } catch (e) {
  442.         print.log("⚠ ¹Ø±ÕAPPʧ°Ü£º" + e.message);
  443.     }
  444.     sleep.second(Ãë = 3);

  445.     // ========================================
  446.     // Ñ­»·¼ä¸ô
  447.     // ========================================
  448.     if (Ñ­»·´ÎÊý == 0 || µ±Ç°Ñ­»· < Ñ­»·´ÎÊý) {
  449.         print.log("\n========== µÈ´ýÏÂÒ»´ÎÑ­»· ==========");
  450.         sleep.second(Ãë = 5);
  451.     }
  452. }

  453. // ========================================
  454. // ½á¹û»ã×Ü
  455. // ========================================
  456. print.timeEnd();
  457. print.log("\n======================================");
  458. print.log("===== ËùÓÐÑ­»·Ö´ÐÐÍê³É =====");
  459. if (Ñ­»·´ÎÊý > 0) {
  460.     print.log("×ܼÆÖ´ÐУº" + Ñ­»·´ÎÊý + " ´Î");
  461. } else {
  462.     print.log("ÎÞÏÞÑ­»·Ä£Ê½£¬ÒÑÖ´ÐУº" + (µ±Ç°Ñ­»· - 1) + " ´Î");
  463. }
  464. print.log("======================================");
¸´ÖÆ´úÂë


»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

±¾°æ»ý·Ö¹æÔò

¹Ø±Õ

QQ|»ÓªÏúÈí¼þ×ÛºÏÌÖÂÛ|»ÓªÏúÈí¼þÓÐÎʱشð|»ÓªÏúÈí¼þ½Ì³Ì×¨Çø|»ÓªÏúÈí¼þPOST½Å±¾·ÖÏí|»ÓªÏúÈí¼þÆÕͨ½Å±¾·ÖÏí|»ÓªÏúÈí¼þÈí¼þ×ÊѶ|»ÓªÏúÈí¼þ¾«Æ·Èí¼þ|»ÓªÏúÈí¼þ¸üй«¸æ|ÓªÏúÈí¼þ|B2BÈí¼þ|B2BÍøÂçÈí¼þ ( ¾©ICP±¸09078825ºÅ )±¾ÍøÕ¾¿ª·¢µÄÓªÏúÈí¼þÊÇÒ»¿îеÄÍøÂçÓªÏúÈí¼þ£¬Õâ¿îÓªÏú¿ÉÒÔÈ¥ÍøÕ¾Èí¼þ£¬²©¿ÍÈí¼þ£¬B2BÈí¼þ£¬·ÖÀàÐÅÏ¢Íø·¢Ìù£¬¿ÉÒÔÇÀɳ·¢£¬¿ÉÒÔµ½°Ù¶ÈÎÄ¿âÉÏ´«WORDÎĵµ£¬¿ÉÒÔµ½Ò»Ð©ÊÇÏà²áÍøÕ¾×Ô¶¯ÉÏ´«Í¼Æ¬£¬Õâ¸ö×Ô¶¯·¢ÌûÈí¼þ×Ô´øÔÆÖ©Ö룬¼Ó¿ìÊÕ¼£¬ÓÐ6ÖÖ¶Ô½Ó´òÂë½Ó¿Ú£¬·½±ã£¬Ð§Âʸߣ¬Ëٶȿ죬¶øÇÒ¶ÔÍ϶¯µÄÑéÖ¤ÂëÈ«ÍøµÚÒ»¼Ò¶À¼ÒÖ§³Ö£¬È«²¿Ô­´´¼¼Êõ£¬¶À¼ÒÑз¢£¬Õý°æÔ­´´´ø°æÈ¨Èí¼þ¡£Ñ¡ÔñÍòÄÜÓªÏúÈí¼þ£¬¾ÍÑ¡ÔñÁËÒ»ÖÖ׬ǮµÄЧÂÊ£¬´ÓûÓб»³¬Ô½¹ý£¬Ò»Ö±ÔÚŬÁ¦Ñз¢Ð¼¼Êõ¡£·Å·ÉÃÎÏ룬½â·ÅË«ÊÖ£¬À´µã´´Ò⣬³É¾ÍÄãµÄÃÎÏ룬¾ÍÔÚÍòÄÜÓªÏúÈí¼þ¿ªÊ¼

map2

GMT+8, 2026-7-9 08:08 , Processed in 0.229016 second(s), 35 queries .

¿ìËٻظ´ ·µ»Ø¶¥²¿ ·µ»ØÁбí