| 
 µÚÒ»¸öÀý×Ó:¿ªÆô´úÀíģʽÅÐ¶Ï agent.start()
  
 agent.start() º¯ÊýÓÃÓÚ¿ªÆô´úÀíģʽ£¬Ðè root ȨÏÞ£¬ÎÞÐè²ÎÊý¡£´Ëº¯ÊýÖ´Ðкó»á·µ»ØÒ»¸ö²¼¶ûÖµ£ºÈç¹û³É¹¦·µ»Ø true£¬·ñÔò·µ»Ø false¡£ÏÂÃæÊÇÒ»¸ö¿ÉÄܵÄʹÓÃÀý×Ó£º  
let result =agent.start();
printl(result);
if (result) {
    console.log("´úÀíÆô¶¯³É¹¦£¡");
} else {
    console.log("´úÀíÆô¶¯Ê§°Ü£¬Çë¼ì²éÊÇ·ñ¾ßÓÐrootȨÏÞ¡£");
}
 ´Ë´úÂë³¢ÊÔÆô¶¯´úÀíģʽ£¬²¢¸ù¾Ý·µ»ØÖµÅÐ¶ÏÆô¶¯ÊÇ·ñ³É¹¦¡£Èç¹û³É¹¦£¬»áÊä³ö¡°´úÀíÆô¶¯³É¹¦£¡¡±£¬·ñÔòÊä³ö¡°´úÀíÆô¶¯Ê§°Ü£¬Çë¼ì²éÊÇ·ñ¾ßÓÐrootȨÏÞ¡£¡± µÚ¶þÀý¸öÀý×Ó£º´úÀíģʽÃüÁîÖ´Ðдò¿ª adb.exec(¡®ls¡¯,false)  
 function executeShellCommand(command, isRoot) {
    try {
        let result = adb.exec(command, isRoot);
        let output = JSON.parse(result);
        if (output.errorMsg) {
            console.error("ÃüÁîÖ´Ðгö´í:", output.errorMsg);
        } else {
            console.log("ÃüÁîÖ´Ðгɹ¦, Êä³ö½á¹û:");
            console.log(output.success.replace(/\\n/g, '\n'));
        }
    } catch (error) {
        console.error("Ö´ÐÐÆÚ¼ä·¢ÉúÒì³£:", error);
    }
}
executeShellCommand('ls', false);
 º¯Êý executeShellCommand²ÎÊýcommand: ÒªÖ´ÐÐµÄ shell ÃüÁî¡£isRoot: ²¼¶ûÖµ£¬±íʾÊÇ·ñÒÔ root ȨÏÞÖ´ÐÐÃüÁî¡£
 ²½ÖèÖ´ÐÐÃüÁî: - ʹÓà
adb.exec(command, isRoot) À´Ö´ÐÐÃüÁ²¢»ñÈ¡·µ»Ø½á¹û¡£ - ·µ»Ø½á¹û±»¼ÙÉèΪ JSON ¸ñʽµÄ×Ö·û´®¡£
 
 ½âÎö½á¹û: - ʹÓà
JSON.parse(result) ½«½á¹û×Ö·û´®½âÎöΪ¶ÔÏó output¡£ 
 ¼ì²é´íÎóÐÅÏ¢: - Èç¹û 
output.errorMsg ´æÔÚ£¬±íʾִÐйý³ÌÖгöÏÖ´íÎó£¬Êä³ö´íÎóÐÅÏ¢¡£ - Èç¹ûûÓдíÎóÐÅÏ¢£¬±íʾÃüÁîÖ´Ðгɹ¦£¬²¢Êä³öÖ´Ðнá¹û¡£
 
 Òì³£´¦Àí: - Óà
try-catch ¿é²¶»ñÖ´Ðйý³ÌÖпÉÄÜ·¢ÉúµÄÒì³££¬²¢Êä³öÒì³£ÐÅÏ¢¡£ 
 
 ʾÀýµ÷ÓÃexecuteShellCommand('ls', false);: µ÷Óøú¯Êý£¬Ö´ÐРls ÃüÁ²¢²»Ê¹Óà root ȨÏÞ¡£
 ¸Ã´úÂëµÄÄ¿µÄÊÇÔÚ JavaScript »·¾³ÖÐͨ¹ý ADB µ÷Óð²×¿É豸µÄ shell ÃüÁ²¢´¦ÀíÊä³ö½á¹û¡£ µÚÈý¸öÀý×Ó£¬´úÀíģʽ·µ»ØÖµ£¬ agent.back()  
 function goBack() {
    
    agent.back();
    console.log("·µ»Ø¼üÒѰ´ÏÂ");
}
goBack();
 µÚËĸöÀý×Ó£¬´úÀíÄ£Ê½ÕæÊµ×ù±êµã»÷ agent.click(100,100)  
 
let xCoordinate = 100; 
let yCoordinate = 100; 
let result = agent.click(xCoordinate, yCoordinate);
if (result) {
    console.log("µã»÷³É¹¦£¡");
} else {
    console.log("µã»÷ʧ°Ü£¬Çë¼ì²é×ø±êÊÇ·ñÕýÈ·¡£");
}
goBackº¯Êý£º
¶¨ÒåÁËÒ»¸öº¯ÊýgoBack£¬ÓÃÓÚ°´Ï·µ»Ø¼ü¡£
ÔÚº¯ÊýÄÚ²¿µ÷ÓÃagent.back()£¬Ö´Ðзµ»Ø²Ù×÷¡£
agent.back()£º
ÕâÊÇÒ»¸öûÓвÎÊýҲûÓзµ»ØÖµµÄº¯Êý¡£
×÷ÓÃÊÇÄ£Äâ°´ÏÂÉ豸Éϵķµ»Ø¼ü¡£
 ¶¨Òå×ø±ê: xCoordinate = 100£ººáÏò×ø±êÉèÖÃΪ100¡£yCoordinate = 100£º×ÝÏò×ø±êÉèÖÃΪ100¡£
 µ÷Óõã»÷º¯Êý: agent.click(xCoordinate, yCoordinate)£º³¢ÊÔµã»÷Ö¸¶¨µÄ×ø±ê¡£
 ¼ì²é½á¹û²¢Êä³ö: - Èç¹û
resultΪtrue£¬ËµÃ÷µã»÷³É¹¦£¬Êä³ö¡±µã»÷³É¹¦£¡¡±¡£ - Èç¹û
resultΪfalse£¬ËµÃ÷µã»÷ʧ°Ü£¬Êä³ö¡±µã»÷ʧ°Ü£¬Çë¼ì²é×ø±êÊÇ·ñÕýÈ·¡£¡±¡£ 
 
 µÚÎå¸öÀý×Ó£¬´úÀíģʽµã»÷ÆÁÄ»°Ù·Ö±È×ù±ê agent.click(0.5,0.5)  
 
let horizontalPercent = 0.144; 
let verticalPercent = 0.3292;   
agent.clickPercent(horizontalPercent, verticalPercent);
console.log("ÒÑÔÚÆÁÄ»ÖÐÐĵã»÷¡£");
 Õâ¶Î´úÂëʵÏÖÁËÔÚÆÁÄ»ÖÐÐĵĵã»÷²Ù×÷¡£¾ßÌå²½ÖèÈçÏ£º ¶¨Òåµã»÷λÖõİٷֱÈ×ø±ê£º horizontalPercentºÍverticalPercent·Ö±ð¶¨ÒåÁ˺á×ø±êºÍ×Ý×ø±êµÄ°Ù·Ö±ÈÖµ¡£0.5±íʾˮƽ·½ÏòºÍ´¹Ö±·½ÏòµÄ50%λÖã¬Ò²¾ÍÊÇÆÁÄ»µÄÖÐÐÄ¡£
 µ÷Óõã»÷º¯Êý£º agent.clickPercent(horizontalPercent, verticalPercent); ÕâÐдúÂëʹÓðٷֱÈ×ø±êÔÚÆÁÄ»ÉÏÖ´Ðеã»÷²Ù×÷¡£
 Êä³ö½á¹û£º console.log("ÒÑÔÚÆÁÄ»ÖÐÐĵã»÷¡£"); Êä³öÒ»ÌõÐÅÏ¢±íʾµã»÷ÒÑÔÚÆÁÄ»ÖÐÐÄÍê³É¡£
 
 Õâ¸öº¯Êýͨ³£ÔÚ×Ô¶¯»¯²âÊÔ»ò½Å±¾ÖÐʹÓã¬ÓÃÓÚÄ£ÄâÓû§µã»÷¶¯×÷¡£ µÚÁù¸öÀý×Ó£¬ agent.home()  
 
agent.home();
console.log("ÒѾ·µ»Øµ½Ö÷ÆÁÄ»¡£");
 ½âÊÍ£º agent.home()£ºµ÷Óø÷½·¨À´Ä£Äâ°´ÏÂÉ豸µÄHOME¼ü£¬Ê¹É豸·µ»Øµ½Ö÷ÆÁÄ»¡£ console.log(¡°ÒѾ·µ»Øµ½Ö÷ÆÁÄ»¡£¡±)£ºÊä³öÒ»ÌõÐÅÏ¢µ½¿ØÖÆÌ¨£¬±íʾ²Ù×÷ÒÑÍê³É¡£ µÚÆß¸öÀý×Ó£¬ADB´úÀíģʽÊäÈëÒ»¸ö×Ö·û´® agent.input(¡®123456¡¯)  
 
let inputString = '123456';
agent.input(inputString);
console.log("ÒÑÊäÈë×Ö·û´®:", inputString);
 ʹÓÃagent.inputº¯ÊýÀ´Ä£ÄâÊäÈëÊý×Ö×Ö·û¡£¸Ãº¯ÊýÖ»Ö§³ÖÓ¢ÎÄ×Ö·ûºÍÊý×Ö×Ö·û£¬²»Ö§³ÖÖÐÎÄ×Ö·û¡£ µÚ°Ë¸öÀý×Ó£¬ADB´úÀíģʽ³£Óð´¼üʼþÂë agent.keyPress(3)  
 
const KEYCODE_HOME = 3;         
const KEYCODE_BACK = 4;         
const KEYCODE_MENU = 82;        
const KEYCODE_VOLUME_UP = 24;   
const KEYCODE_VOLUME_DOWN = 25; 
const KEYCODE_POWER = 26;       
function simulateKeyPress(keyCode) {
    let result = agent.keyPress(keyCode);
    if (result) {
        console.log("°´¼üʼþ³É¹¦:", keyCode);
    } else {
        console.log("°´¼üʼþʧ°Ü:", keyCode);
    }
}
simulateKeyPress(KEYCODE_HOME);
simulateKeyPress(KEYCODE_BACK);
simulateKeyPress(KEYCODE_MENU);
simulateKeyPress(KEYCODE_VOLUME_UP);
simulateKeyPress(KEYCODE_VOLUME_DOWN);
simulateKeyPress(KEYCODE_POWER);
 Õâ¶Î´úÂ붨ÒåÁËһЩ³£Óõİ´¼üʼþÂ룬²¢Í¨¹ý simulateKeyPress º¯ÊýÀ´Ä£Äâ°´¼üʼþ¡£ÒÔÏÂÊÇ´úÂëµÄÏêϸ˵Ã÷£º ¶¨Òå°´¼üʼþÂ룺 KEYCODE_HOME¡¢KEYCODE_BACK¡¢KEYCODE_MENU¡¢KEYCODE_VOLUME_UP¡¢KEYCODE_VOLUME_DOWN ºÍ KEYCODE_POWER ÊǶÔÓ¦²»Í¬°´¼üµÄʼþÂ룬·Ö±ðÓÃÓÚÄ£Äâ°´ÊÖ»úÉϲ»Í¬µÄ°´Å¥¡£
 simulateKeyPress º¯Êý£º
 - ½ÓÊÕÒ»¸ö 
keyCode ²ÎÊý£¬±íʾҪģÄâµÄ°´¼ü¡£ - ʹÓà
agent.keyPress(keyCode) ·½·¨Ä£Äâ°´¼üʼþ¡£ - ¸ù¾Ý 
result µÄÖµÀ´Åжϰ´¼üʼþÊÇ·ñ³É¹¦£¬²¢Êä³öÏàÓ¦µÄÈÕÖ¾ÐÅÏ¢¡£ 
 µ÷Óð´¼üʼþ£º - ʹÓà
simulateKeyPress º¯ÊýÒÀ´ÎÄ£Äâ HOME¡¢BACK¡¢MENU¡¢ÒôÁ¿Ôö´ó¡¢ÒôÁ¿¼õСÒÔ¼°µçÔ´°´¼üµÄʼþ¡£ 
 
 ͨ¹ýÕâ¸ö´úÂ룬¿ÉÒÔÇáËɵØÔÚ³ÌÐòÖÐÄ£Äâ¸÷ÖÖ³£Óð´¼üµÄ°´Ï²Ù×÷¡£ µÚ¾Å¸öÀý×Ó£¬ADB½ØÈ¡´úÀíģʽµÄÆÁÄ»½ØÍ¼ agent.screenShot(374,666,100)  
 
let width = 374.0;
let height = 666.0;
let quality = 100;
let img = agent.screenShot(width, height, quality);
printl(img);
 ±äÁ¿¶¨Ò壺 width: ÉèÖýØÍ¼µÄ¿í¶ÈΪ374ÏñËØ¡£ height: ÉèÖýØÍ¼µÄ¸ß¶ÈΪ666ÏñËØ¡£ quality: ÉèÖýØÍ¼ÖÊÁ¿Îª100¡£ ½ØÆÁ²Ù×÷£º ʹÓà agent.screenShot(width, height, quality) ·½·¨½ØÈ¡ÆÁÄ»½ØÍ¼£¬²¢½«·µ»ØµÄͼÏñ¶ÔÏó´æ´¢ÔÚ img ±äÁ¿ÖС£ ½á¹û¼ì²é£º ͨ¹ýÅÐ¶Ï img ÊÇ·ñÎªÕæÖµÀ´¼ì²é½ØÆÁÊÇ·ñ³É¹¦¡£ µÚÊ®¸öÀý×Ó£¬Ö´ÐÐShellÃüÁͨ¹ý×ø±êÄ£Äâµã»÷ÆÁÄ» agent.shell(¡®input tap 455 974¡¯)  
 
let command = 'input tap 455 974';
let result = agent.shell(command);
if (result) {
    console.log("ShellÃüÁîÖ´Ðгɹ¦:", result);
} else {
    console.log("ShellÃüÁîÖ´ÐÐʧ°Ü");
}
 ±äÁ¿ command£º´æ´¢ÒªÖ´ÐеÄShellÃüÁÕâÀïÊÇÄ£Äâµã»÷ÆÁĻָ¶¨Î»Öà (455, 974)¡£ agent.shell(command)£º·¢ËÍÃüÁî¸øÉ豸½øÐÐÖ´ÐС£ ¡°tap¡± ÊÇÒ»¸öÓÃÓÚÄ£Äâ´¥ÃþÆÁÄ»µÄÃüÁî¡£Ö´ÐÐÕâ¸öÃüÁî»áÔÚÖ¸¶¨µÄ×ø±êλÖÃÄ£ÄâÒ»´Îµã»÷¶¯×÷¡£ µÚʮһ¸öÀý×Ó£¬´úÀíģʽ»¬¶¯¹¦ÄÜ agent.swip(50,100,500,100,10,0,0)  
 
let startX = 50;  
let startY = 100; 
let endX = 500;   
let endY = 100;   
let steps = 10;       
let downTime = 0;     
let upTime = 0;       
agent.swip(startX, startY, endX, endY, steps, downTime, upTime);
printl("»¬¶¯²Ù×÷ÒÑÍê³É");
 ÑÝʾÁËÈçºÎʹÓà swip º¯Êý´ÓÆðµã»¬¶¯µ½Öյ㡣ÒÔÏÂÊDzÎÊýµÄÏêϸ˵Ã÷£º int x1, y1: ÆðµãµÄºá×ø±êºÍ×Ý×ø±ê¡£ int x2, y2: ÖÕµãµÄºá×ø±êºÍ×Ý×ø±ê¡£ int steps: ´ÓÆðµãµ½Öյ㣬»¬¶¯ËùÐèµÄ²½Êý¡£ int downTime: °´ÏÂÑÓ³Ùʱ¼ä£¨ºÁÃ룩¡£ int upTime: ̧ÆðÑÓ³Ùʱ¼ä£¨ºÁÃ룩¡£  
 µÚʮһ¸öÀý×Ó£¬´úÀíģʽAIÄ£ÄâÊÖ¹¤»¬¶¯¹¦ÄÜ agent.swipAI(0,0,0,0)  
 
let startX = 0;    
let startY = 0;    
let endX = 500;    
let endY = 500;    
agent.swipAI(startX, startY, endX, endY);
console.log("AI»¬¶¯²Ù×÷Íê³É.");
 ˵Ã÷ arg0: int startX ¡ª »¬¶¯¿ªÊ¼µÄºá×ø±ê¡£ arg1: int startY ¡ª »¬¶¯¿ªÊ¼µÄ×Ý×ø±ê¡£ arg2: int endX ¡ª »¬¶¯½áÊøµÄºá×ø±ê¡£ arg3: int endY ¡ª »¬¶¯½áÊøµÄ×Ý×ø±ê¡£ Õâ¸öº¯ÊýÄ£·ÂÈËÊÖÊÆµÄ»¬¶¯£¬ÊÊÓÃÓÚÐèҪģÄâÕæÊµ´¥ÆÁ»¬¶¯µÄ³¡¾°¡£ µÚÊ®¶þ¸öÀý×Ó£¬´úÀíģʽ°´Ï£¬Òƶ¯£¬Ì§Æð agent.touchDown(0,0,0) agent.touchMove(0,0,0) agent.touchUp(0)  
  
  
 
agent.touchDown(0, 100, 100);
agent.touchMove(0, 200, 200);
agent.touchUp(0);
 ºÎʹÓà touchDown¡¢touchMove ºÍ touchUp ·½·¨×éºÏÀ´Ä£ÄâÒ»¸ö´ÓÆÁÄ»ÉϵÄÒ»¸öµãÒÆ¶¯µ½ÁíÒ»¸öµãµÄÍ϶¯Ð§¹û¡£ ËùÓдúÂë½øÐÐ×éºÏ£º 
agent.start();
console.log("´úÀíģʽÒÑ¿ªÆô");
agent.shell('input tap 455 974');
console.log("Ö´ÐÐShellÃüÁîÍê³É");
let img = agent.screenShot(374, 666, 100);
console.log("½ØÍ¼²Ù×÷Íê³É");
const KEYCODE_HOME = 3;
agent.keyPress(KEYCODE_HOME);
console.log("Ä£Äâ°´¼üÍê³É");
agent.click(100, 100);
console.log("ÆÁÄ»µã»÷Íê³É");
agent.swip(50, 100, 500, 200, 10, 0, 0);
console.log("»¬¶¯²Ù×÷Íê³É");
agent.swipAI(0, 0, 500, 500);
console.log("AI»¬¶¯²Ù×÷Íê³É");
agent.touchDown(0, 100, 100);
agent.touchMove(0, 200, 200);
agent.touchUp(0);
console.log("´¥Ãþ²Ù×÷Íê³É");
 
 
  |