|
|
AIWROK ÈÕÖ¾´òÓ¡·½·¨ÍêÕû¼¯ºÏ
- /**
- * AIWROK ÈÕÖ¾´òÓ¡·½·¨ÍêÕû¼¯ºÏ
- * °üº¬ËùÓÐÈÕÖ¾Êä³ö¡¢µ÷ÊÔ¡¢¼ÆÊ±Ïà¹Ø·½·¨£¬º¬ÍêÕû°¸ÀýÑÝʾ
- */
- // ======================== ¹¤¾ßº¯Êý ========================
- /**
- * µ¹¼ÆÊ±£¨Ã룩
- */
- function countdown(seconds) {
- for (var i = seconds; i >= 1; i--) {
- printl(" ⏳ " + i + " Ãëºó¿ªÊ¼ÏÂÒ»¸öÑÝʾ...");
- sleep.millisecond(1000);
- }
- printl(" ▶ ¿ªÊ¼£¡");
- }
- /**
- * ·Ö¸ôÏß
- */
- function divider(title) {
- printl("");
- printl("================================================");
- printl(" " + title);
- printl("================================================");
- }
- // ======================== 1. printl »ù´¡Êä³ö ========================
- /**
- * printl - Êä³öÈÕÖ¾ÐÅÏ¢µ½¿ØÖÆÌ¨
- * ·½·¨Ç©Ãû: void printl(Object... args)
- * Ö§³Ö¶à¸ö²ÎÊý£¬×Ô¶¯Óÿոñ·Ö¸ô
- */
- function demo_printl() {
- printl("[°¸Àý] printl »ù´¡Êä³ö");
- printl(" Ö±½ÓÊä³ö×Ö·û´®");
- var x = 100, y = 200;
- printl(" ¶à²ÎÊý:", x, y);
- var token = "abc123";
- printl(" Token:", token);
- var data = {name: "test", value: 100};
- printl(" ¶ÔÏó:", data);
- printl(" ¼ÆËã:", 100 + 200);
- }
- // ======================== 2. print.log ÆÕͨÈÕÖ¾ ========================
- /**
- * print.log - Êä³öÆÕͨÈÕÖ¾ÐÅÏ¢
- * ·½·¨Ç©Ãû: void print.log(Object arg0)
- */
- function demo_printLog() {
- printl("[°¸Àý] print.log ÆÕͨÈÕÖ¾");
- print.log("ÕâÊÇÒ»ÌõÆÕͨÈÕÖ¾ÄÚÈÝ");
- print.log({key: "value", info: "ʾÀý¶ÔÏó"});
- }
- // ======================== 3. print.err ´íÎóÈÕÖ¾ ========================
- /**
- * print.err - Êä³ö´íÎóÐÅÏ¢
- * ·½·¨Ç©Ãû: void print.err(Object arg0)
- */
- function demo_printErr() {
- printl("[°¸Àý] print.err ´íÎóÈÕÖ¾");
- print.err("²Ù×÷Ö´ÐÐʧ°Ü");
- print.err({code: 500, message: "·þÎñÆ÷ÄÚ²¿´íÎó"});
- }
- // ======================== 4. print.warn ¾¯¸æÈÕÖ¾ ========================
- /**
- * print.warn - Êä³ö¾¯¸æÐÅÏ¢
- * ·½·¨Ç©Ãû: void print.warn(Object arg0)
- */
- function demo_printWarn() {
- printl("[°¸Àý] print.warn ¾¯¸æÈÕÖ¾");
- print.warn("ÕâÊÇÒ»ÌõÐèÒª¹Ø×¢µÄ¾¯¸æÐÅÏ¢");
- print.warn({code: 201, tip: "×ÊÔ´¼´½«ºÄ¾¡"});
- }
- // ======================== 5. print.time/timeEnd ¼ÆÊ± ========================
- /**
- * print.time - Æô¶¯¼ÆÊ±
- * print.timeEnd - ½áÊø¼ÆÊ±²¢·µ»ØÊ±³¤£¨ºÁÃ룩
- */
- function demo_printTime() {
- printl("[°¸Àý] print.time / print.timeEnd ¼ÆÊ±¹¦ÄÜ");
- print.time();
- var result = 0;
- for (var i = 0; i < 10000; i++) {
- result += i;
- }
- var costTime = print.timeEnd();
- printl(" Ñ»·10000´ÎÀÛ¼Ó£¬ºÄʱ: " + costTime + " ºÁÃë");
- printl(" ¼ÆËã½á¹û: " + result);
- }
- // ======================== 6. logWindow ÈÕÖ¾´°¿Ú¿ØÖÆ ========================
- /**
- * logWindow È«Ì×·½·¨ÑÝʾ
- */
- function demo_logWindow() {
- printl("[°¸Àý] logWindow ÈÕÖ¾´°¿Ú¿ØÖÆ");
- // ÉèÖô°¿ÚλÖúʹóС
- logWindow.setPosition(0, 0);
- printl(" setPosition(0, 0) - ÉèÖô°¿ÚλÖÃ");
- logWindow.setWidth(screen.getScreenWidth());
- printl(" setWidth(" + screen.getScreenWidth() + ") - ÉèÖô°¿Ú¿í¶È");
- logWindow.setHeight(300);
- printl(" setHeight(300) - ÉèÖô°¿Ú¸ß¶È");
- // ÉèÖÃÑùʽ
- logWindow.setSize(14);
- printl(" setSize(14) - ÉèÖÃ×ÖÌå´óС");
- logWindow.setColor("#FFFFFF");
- printl(" setColor(#FFFFFF) - ÉèÖÃ×ÖÌåÑÕÉ«");
- logWindow.setAlpha(0.8);
- printl(" setAlpha(0.8) - ÉèÖÃ͸Ã÷¶È");
- // ÉèÖÃģʽ
- logWindow.showModel(0);
- printl(" showModel(0) - ÏÔʾȫ²¿ÈÕÖ¾");
- logWindow.setClickModel();
- printl(" setClickModel() - ÉèÖÿɵã»÷ģʽ");
- logWindow.clear();
- printl(" clear() - Çå¿ÕÈÕÖ¾ÄÚÈÝ");
- }
- // ======================== 7. ×Ô¶¨ÒåÈÕÖ¾·â×° ========================
- /**
- * ´øÊ±¼ä´ÁµÄÈÕÖ¾
- */
- function logWithTime(msg) {
- var now = new Date();
- var timeStr = now.getHours() + ":" + now.getMinutes() + ":" + now.getSeconds();
- printl("[" + timeStr + "] " + msg);
- }
- /**
- * ´ø¼¶±ðµÄÈÕÖ¾
- */
- function logInfo(msg) {
- printl("[INFO] " + msg);
- }
- function logWarn(msg) {
- print.warn("[WARN] " + msg);
- }
- function logError(msg) {
- print.err("[ERROR] " + msg);
- }
- /**
- * ´øº¯ÊýÃûµÄÈÕÖ¾
- */
- function logWithFunc(funcName, msg) {
- printl("[" + funcName + "] " + msg);
- }
- function demo_customLog() {
- printl("[°¸Àý] ×Ô¶¨ÒåÈÕÖ¾·â×°");
- logWithTime("´øÊ±¼ä´ÁµÄÈÕÖ¾");
- logInfo("ÕâÊÇÒ»ÌõÐÅÏ¢ÈÕÖ¾");
- logWarn("ÕâÊÇÒ»Ìõ¾¯¸æÈÕÖ¾");
- logError("ÕâÊÇÒ»Ìõ´íÎóÈÕÖ¾");
- logWithFunc("main", "´øº¯ÊýÃûµÄÈÕÖ¾");
- }
- // ======================== 8. ´íÎó²¶»ñÈÕÖ¾ ========================
- /**
- * ´ø´íÎó²¶»ñµÄÈÕÖ¾
- */
- function safeExecute(func) {
- try {
- func();
- } catch (e) {
- print.err("Ö´Ðгö´í: " + e.message);
- }
- }
- function demo_safeExecute() {
- printl("[°¸Àý] ´íÎó²¶»ñÈÕÖ¾");
- safeExecute(function() {
- var result = 100 / 0;
- printl(" ½á¹û: " + result);
- });
- safeExecute(function() {
- var obj = null;
- obj.toString();
- });
- }
- // ======================== 9. µ÷ÊÔÊä³ö¼¼ÇÉ ========================
- /**
- * Êä³öÊý×éÄÚÈÝ
- */
- function logArray(arr) {
- printl(" Êý×鳤¶È: " + arr.length);
- for (var i = 0; i < arr.length; i++) {
- printl(" [" + i + "] = " + arr[i]);
- }
- }
- /**
- * Êä³ö¶ÔÏóÊôÐÔ
- */
- function logObject(obj) {
- printl(" ¶ÔÏóÊôÐÔ:");
- for (var key in obj) {
- if (obj.hasOwnProperty(key)) {
- printl(" " + key + " = " + obj[key]);
- }
- }
- }
- /**
- * Ìõ¼þÈÕÖ¾Êä³ö
- */
- function logIf(condition, msg) {
- if (condition) {
- printl(" " + msg);
- }
- }
- function demo_debugTips() {
- printl("[°¸Àý] µ÷ÊÔÊä³ö¼¼ÇÉ");
- printl(" --- Êä³öÊý×é ---");
- logArray([10, 20, 30, 40, 50]);
- printl(" --- Êä³ö¶ÔÏó ---");
- logObject({name: "test", age: 25, city: "±±¾©"});
- printl(" --- Ìõ¼þÊä³ö ---");
- var debugMode = true;
- logIf(debugMode, "µ÷ÊÔģʽÒÑ¿ªÆô");
- logIf(!debugMode, "µ÷ÊÔģʽÒѹرգ¨²»»áÏÔʾ£©");
- }
- // ======================== 10. ÈÕÖ¾·Ö¼¶ÏµÍ³ ========================
- var LOG_LEVEL = {
- DEBUG: 0,
- INFO: 1,
- WARN: 2,
- ERROR: 3
- };
- var currentLogLevel = LOG_LEVEL.DEBUG;
- function setLogLevel(level) {
- currentLogLevel = level;
- }
- function log(level, msg) {
- if (level >= currentLogLevel) {
- switch (level) {
- case LOG_LEVEL.DEBUG:
- printl("[DEBUG] " + msg);
- break;
- case LOG_LEVEL.INFO:
- printl("[INFO] " + msg);
- break;
- case LOG_LEVEL.WARN:
- print.warn("[WARN] " + msg);
- break;
- case LOG_LEVEL.ERROR:
- print.err("[ERROR] " + msg);
- break;
- }
- }
- }
- function demo_logLevel() {
- printl("[°¸Àý] ÈÕÖ¾·Ö¼¶ÏµÍ³");
- printl(" --- ¼¶±ð: DEBUG£¨È«²¿ÏÔʾ£©---");
- setLogLevel(LOG_LEVEL.DEBUG);
- log(LOG_LEVEL.DEBUG, "DEBUG ÏûÏ¢");
- log(LOG_LEVEL.INFO, "INFO ÏûÏ¢");
- log(LOG_LEVEL.WARN, "WARN ÏûÏ¢");
- log(LOG_LEVEL.ERROR, "ERROR ÏûÏ¢");
- printl(" --- ¼¶±ð: WARN£¨Ö»ÏÔʾ WARN ºÍ ERROR£©---");
- setLogLevel(LOG_LEVEL.WARN);
- log(LOG_LEVEL.DEBUG, "DEBUG ÏûÏ¢£¨²»ÏÔʾ£©");
- log(LOG_LEVEL.INFO, "INFO ÏûÏ¢£¨²»ÏÔʾ£©");
- log(LOG_LEVEL.WARN, "WARN ÏûÏ¢");
- log(LOG_LEVEL.ERROR, "ERROR ÏûÏ¢");
- // »Ö¸´ DEBUG ¼¶±ð
- setLogLevel(LOG_LEVEL.DEBUG);
- }
- // ======================== 11. ÎļþÈÕÖ¾ ========================
- /**
- * Êä³öÈÕÖ¾µ½Îļþ
- */
- function logToFile(filePath, msg) {
- var now = new Date();
- var timeStr = now.getFullYear() + "-" +
- (now.getMonth() + 1) + "-" +
- now.getDate() + " " +
- now.getHours() + ":" +
- now.getMinutes() + ":" +
- now.getSeconds();
-
- var logMsg = "[" + timeStr + "] " + msg + "\n";
-
- try {
- importClass(java.io.FileWriter);
- var fw = new java.io.FileWriter(filePath, true);
- fw.write(logMsg);
- fw.close();
- } catch (e) {
- printl("[ERROR] дÈëÈÕÖ¾Îļþʧ°Ü: " + e.message);
- }
-
- printl(" " + logMsg.replace("\n", ""));
- }
- function demo_logToFile() {
- printl("[°¸Àý] ÎļþÈÕÖ¾Êä³ö");
- var logPath = "/sdcard/app.log";
- logToFile(logPath, "Ó¦ÓÃÆô¶¯");
- logToFile(logPath, "Óû§µÇ¼³É¹¦");
- logToFile(logPath, "Ö´ÐÐÈÎÎñÍê³É");
- printl(" ÈÕÖ¾ÒÑдÈë: " + logPath);
- }
- // ======================== 12. ÐÔÄܲâÊÔ ========================
- function demo_performance() {
- printl("[°¸Àý] ÐÔÄܲâÊÔ - ½ØÍ¼ºÄʱͳ¼Æ");
- print.time();
- var totalTime = 0;
- for (var i = 0; i < 5; i++) {
- var t1 = java.lang.System.currentTimeMillis();
- var img = screen.screenShotFull();
- img.recycle();
- var t2 = java.lang.System.currentTimeMillis();
- var cost = t2 - t1;
- totalTime += cost;
- printl(" µÚ" + (i + 1) + "´Î½ØÍ¼: " + cost + " ms");
- }
- var totalCost = print.timeEnd();
- printl(" 5´Î½ØÍ¼×ܺÄʱ: " + totalCost + " ms");
- printl(" ƽ¾ùÿ´Î: " + Math.round(totalCost / 5) + " ms");
- }
- // ============================================================
- // È«²¿¹¦Äܰ¸ÀýÑÝʾ
- // ============================================================
- function demo() {
- printl("");
- printl("¨X¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨[");
- printl("¨U AIWROK ÈÕÖ¾´òÓ¡·½·¨¼¯ - È«²¿ÑÝʾ ¨U");
- printl("¨U ¹² 12 ¸ö¹¦ÄÜ£¬Öð¸öÑÝʾ ¨U");
- printl("¨^¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨a");
- // ---- ÑÝʾ 1: printl »ù´¡Êä³ö ----
- divider("ÑÝʾ 1/12: printl »ù´¡Êä³ö");
- demo_printl();
- countdown(2);
- // ---- ÑÝʾ 2: print.log ÆÕͨÈÕÖ¾ ----
- divider("ÑÝʾ 2/12: print.log ÆÕͨÈÕÖ¾");
- demo_printLog();
- countdown(2);
- // ---- ÑÝʾ 3: print.err ´íÎóÈÕÖ¾ ----
- divider("ÑÝʾ 3/12: print.err ´íÎóÈÕÖ¾");
- demo_printErr();
- countdown(2);
- // ---- ÑÝʾ 4: print.warn ¾¯¸æÈÕÖ¾ ----
- divider("ÑÝʾ 4/12: print.warn ¾¯¸æÈÕÖ¾");
- demo_printWarn();
- countdown(2);
- // ---- ÑÝʾ 5: print.time/timeEnd ¼ÆÊ± ----
- divider("ÑÝʾ 5/12: print.time / print.timeEnd ¼ÆÊ±");
- demo_printTime();
- countdown(2);
- // ---- ÑÝʾ 6: logWindow ÈÕÖ¾´°¿Ú ----
- divider("ÑÝʾ 6/12: logWindow ÈÕÖ¾´°¿Ú¿ØÖÆ");
- demo_logWindow();
- countdown(2);
- // ---- ÑÝʾ 7: ×Ô¶¨ÒåÈÕÖ¾·â×° ----
- divider("ÑÝʾ 7/12: ×Ô¶¨ÒåÈÕÖ¾·â×°");
- demo_customLog();
- countdown(2);
- // ---- ÑÝʾ 8: ´íÎó²¶»ñÈÕÖ¾ ----
- divider("ÑÝʾ 8/12: ´íÎó²¶»ñÈÕÖ¾");
- demo_safeExecute();
- countdown(2);
- // ---- ÑÝʾ 9: µ÷ÊÔÊä³ö¼¼ÇÉ ----
- divider("ÑÝʾ 9/12: µ÷ÊÔÊä³ö¼¼ÇÉ");
- demo_debugTips();
- countdown(2);
- // ---- ÑÝʾ 10: ÈÕÖ¾·Ö¼¶ÏµÍ³ ----
- divider("ÑÝʾ 10/12: ÈÕÖ¾·Ö¼¶ÏµÍ³");
- demo_logLevel();
- countdown(2);
- // ---- ÑÝʾ 11: ÎļþÈÕÖ¾ ----
- divider("ÑÝʾ 11/12: ÎļþÈÕÖ¾Êä³ö");
- demo_logToFile();
- countdown(2);
- // ---- ÑÝʾ 12: ÐÔÄܲâÊÔ ----
- divider("ÑÝʾ 12/12: ÐÔÄܲâÊÔ");
- demo_performance();
- // ---- ×ܽá ----
- printl("");
- printl("¨X¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨[");
- printl("¨U È«²¿ 12 ¸öÑÝʾÍê³É£¡ ¨U");
- printl("¨d¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨g");
- printl("¨U 1. printl »ù´¡ÈÕÖ¾Êä³ö ¨U");
- printl("¨U 2. print.log ÆÕͨÈÕÖ¾ ¨U");
- printl("¨U 3. print.err ´íÎóÈÕÖ¾ ¨U");
- printl("¨U 4. print.warn ¾¯¸æÈÕÖ¾ ¨U");
- printl("¨U 5. print.time ¼ÆÊ±¹¦ÄÜ ¨U");
- printl("¨U 6. logWindow ÈÕÖ¾´°¿Ú¿ØÖÆ ¨U");
- printl("¨U 7. ×Ô¶¨Òå·â×° ´øÊ±¼ä´Á/¼¶±ð/º¯ÊýÃû ¨U");
- printl("¨U 8. safeExecute ´íÎó²¶»ñÈÕÖ¾ ¨U");
- printl("¨U 9. µ÷ÊÔ¼¼ÇÉ Êý×é/¶ÔÏó/Ìõ¼þÊä³ö ¨U");
- printl("¨U 10. ÈÕÖ¾·Ö¼¶ DEBUG/INFO/WARN/ERROR ¨U");
- printl("¨U 11. logToFile ÎļþÈÕÖ¾Êä³ö ¨U");
- printl("¨U 12. ÐÔÄܲâÊÔ ½ØÍ¼ºÄʱͳ¼Æ ¨U");
- printl("¨^¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨T¨a");
- }
- // Ö±½ÓÔËÐÐÑÝʾ
- demo();
¸´ÖÆ´úÂë
|
|