|
|
Æ»¹û½Å±¾Ê¾ÀýConfigÅäÖÃH5¼¯³É
- // 🍎½»Á÷QQȺ£º711841924£¨Èº£©
- // 🍎½»Á÷QQȺ£º528816639 £¨Æ»¹ûÄÚ²âȺ£©
- // ============================================
- // AIWROK Config ÅäÖùÜÀíÆ÷ - H5¼¯³ÉʾÀý
- // ============================================
- printl("====================================");
- printl("Æô¶¯ AIWROK Config ÅäÖùÜÀíÆ÷");
- printl("====================================");
- // ============================================
- // ÅäÖÃÎļþ·¾¶¹ÜÀí
- // ============================================
- var resourcesPath = project.getResourcesPath();
- // È·±£Â·¾¶Ä©Î²Ö»ÓÐÒ»¸öб¸Ü£¬±ÜÃâ˫б¸ÜÎÊÌâ
- if (resourcesPath.endsWith("/")) {
- var CONFIG_FILE_PATH = resourcesPath + "config.json";
- } else {
- var CONFIG_FILE_PATH = resourcesPath + "/config.json";
- }
- printl("ÅäÖÃÎļþ·¾¶: " + CONFIG_FILE_PATH);
- /**
- * ´ÓÎļþ¼ÓÔØÅäÖÃ
- * @returns {Object} ÅäÖöÔÏó
- */
- function loadConfigFromFile() {
- try {
- if (typeof files !== 'undefined' && files.exists(CONFIG_FILE_PATH)) {
- var content = files.read(CONFIG_FILE_PATH);
- if (content) {
- var configs = JSON.parse(content);
- printl("✅ ´ÓÎļþ¼ÓÔØÅäÖóɹ¦: " + Object.keys(configs).length + " ¸öÅäÖÃÏî");
- return configs;
- }
- }
- } catch (e) {
- printl("⚠️ ¼ÓÔØÅäÖÃÎļþʧ°Ü: " + e.message);
- }
- return {};
- }
- /**
- * ±£´æÅäÖõ½Îļþ
- * @param {Object} configs - ÅäÖöÔÏó
- * @returns {boolean} ÊÇ·ñ³É¹¦
- */
- function saveConfigToFile(configs) {
- try {
- if (typeof files !== 'undefined') {
- var content = JSON.stringify(configs, null, 2);
- files.write(CONFIG_FILE_PATH, content);
- printl("✅ ÅäÖÃÒѱ£´æµ½Îļþ: " + CONFIG_FILE_PATH);
- return true;
- }
- } catch (e) {
- printl("⚠️ ±£´æÅäÖÃÎļþʧ°Ü: " + e.message);
- }
- return false;
- }
- // Æô¶¯Ê±´ÓÎļþ¼ÓÔØÅäÖÃ
- var loadedConfigs = loadConfigFromFile();
- // ´´½¨ WebView ʵÀý
- var web = new WebView();
- // ÏÔʾ WebView ½çÃæ
- web.show();
- // ¼ÓÔØ±¾µØ HTML Îļþ
- var htmlPath = project.getCodePath() + "h5.html";
- web.loadFile(htmlPath);
- // ´òÓ¡¼ÓÔØÐÅÏ¢
- printl("WebView ÒÑ´´½¨²¢¼ÓÔØ£º" + htmlPath);
- // µ¼ÈëÈÕ־ǎӯ÷
- Import("LogBridge.js");
- // ³õʼ»¯ÈÕ־ǎӣ¨»á×èÈûµÈ´ý WebView ¼ÓÔØÍê³É£©
- LogManagerH5.init(web);
- // ÑÓ³ÙÖ´ÐУ¬È·±£ H5 Ò³ÃæÍêÈ«¼ÓÔØ
- _sleep(2000);
- // ·¢ËͲâÊÔÈÕÖ¾µ½ H5 ½çÃæ
- LogManagerH5.success("ϵͳÆô¶¯³É¹¦");
- LogManagerH5.info("WebView ÒѾÍÐ÷");
- // ============================================
- // ×¢²á H5 Óë Native ½»»¥·½·¨
- // ============================================
- printl("\nÕýÔÚ×¢²á H5 ½»»¥·½·¨...");
- /**
- * ÉèÖÃÅäÖ㨹© H5 µ÷Óã©
- * @param {string} key - ÅäÖüü
- * @param {string} value - ÅäÖÃÖµ
- * @returns {boolean} ÊÇ·ñ³É¹¦
- */
- this.setConfig = function(key, value) {
- try {
- var fullKey = "AIWROK_" + key;
- config.setConfig(fullKey, String(value));
- printl("[H5¡úNative] ÉèÖÃÅäÖÃ: " + fullKey + " = " + value);
- LogManagerH5.success("✓ ÅäÖÃÒѱ£´æ: " + key);
- return true;
- } catch (e) {
- printl("[´íÎó] ÉèÖÃÅäÖÃʧ°Ü: " + e.message);
- LogManagerH5.error("✗ ±£´æÊ§°Ü: " + e.message);
- return false;
- }
- };
- /**
- * »ñÈ¡ÅäÖ㨹© H5 µ÷Óã©
- * @param {string} key - ÅäÖüü
- * @returns {string} ÅäÖÃÖµ
- */
- this.getConfig = function(key) {
- try {
- var fullKey = "AIWROK_" + key;
- var value = config.getConfig(fullKey, "");
- printl("[H5¡úNative] »ñÈ¡ÅäÖÃ: " + fullKey + " = " + value);
- return value;
- } catch (e) {
- printl("[´íÎó] »ñÈ¡ÅäÖÃʧ°Ü: " + e.message);
- return "";
- }
- };
- /**
- * ÅúÁ¿±£´æÅäÖ㨹© H5 µ÷Óã©
- * @param {string} configsJson - JSON ×Ö·û´®¸ñʽµÄÅäÖöÔÏó
- * @returns {boolean} ÊÇ·ñ³É¹¦
- */
- this.batchSetConfigs = function(configsJson) {
- try {
- var configs = JSON.parse(configsJson);
- var count = 0;
- for (var key in configs) {
- config.setConfig("AIWROK_" + key, String(configs[key]));
- count++;
- }
- printl("[H5¡úNative] ÅúÁ¿±£´æ " + count + " ¸öÅäÖÃ");
- LogManagerH5.success("✓ ÅúÁ¿±£´æ " + count + " ¸öÅäÖÃ");
- return true;
- } catch (e) {
- printl("[´íÎó] ÅúÁ¿±£´æÊ§°Ü: " + e.message);
- LogManagerH5.error("✗ ÅúÁ¿±£´æÊ§°Ü: " + e.message);
- return false;
- }
- };
- /**
- * ÅúÁ¿»ñÈ¡ÅäÖ㨹© H5 µ÷Óã©
- * @param {string} keysJson - JSON ×Ö·û´®¸ñʽµÄ¼üÊý×é
- * @returns {string} JSON ×Ö·û´®¸ñʽµÄÅäÖöÔÏó
- */
- this.batchGetConfigs = function(keysJson) {
- try {
- var keys = JSON.parse(keysJson);
- var result = {};
- for (var i = 0; i < keys.length; i++) {
- var key = keys[i];
- result[key] = config.getConfig("AIWROK_" + key, "");
- }
- printl("[H5¡úNative] ÅúÁ¿»ñÈ¡ " + keys.length + " ¸öÅäÖÃ");
- return JSON.stringify(result);
- } catch (e) {
- printl("[´íÎó] ÅúÁ¿»ñȡʧ°Ü: " + e.message);
- return "{}";
- }
- };
- /**
- * µ¼³öËùÓÐÅäÖ㨹© H5 µ÷Óã©
- * @returns {string} JSON ×Ö·û´®¸ñʽµÄËùÓÐÅäÖÃ
- */
- this.exportAllConfigs = function() {
- try {
- var allKeys = [
- "game_name", "task_delay", "max_rounds", "enable_combat", "auto_heal",
- "ocr_language", "ocr_confidence", "ocr_timeout", "ocr_retry",
- "ui_theme", "ui_font_size", "ui_show_toolbar", "ui_animation",
- "network_base_url", "network_version", "network_timeout", "network_retries"
- ];
-
- var result = {};
- for (var i = 0; i < allKeys.length; i++) {
- var key = allKeys[i];
- result[key] = config.getConfig("AIWROK_" + key, "");
- }
-
- var jsonStr = JSON.stringify(result, null, 2);
- printl("[H5¡úNative] µ¼³öËùÓÐÅäÖÃ");
- LogManagerH5.info("📤 ÅäÖÃÒѵ¼³ö");
- return jsonStr;
- } catch (e) {
- printl("[´íÎó] µ¼³öÅäÖÃʧ°Ü: " + e.message);
- LogManagerH5.error("✗ µ¼³öʧ°Ü: " + e.message);
- return "{}";
- }
- };
- /**
- * »Ö¸´Ä¬ÈÏÅäÖ㨹© H5 µ÷Óã©
- * @param {string} category - ÅäÖ÷ÖÀà (game/ocr/ui/network/all)
- * @returns {string} JSON ×Ö·û´®¸ñʽµÄĬÈÏÅäÖÃ
- */
- this.resetToDefault = function(category) {
- try {
- var defaultConfigs = {};
-
- if (category === "game" || category === "all") {
- defaultConfigs.game_name = "ÃλÃÎ÷ÓÎ";
- defaultConfigs.task_delay = "2000";
- defaultConfigs.max_rounds = "10";
- defaultConfigs.enable_combat = "true";
- defaultConfigs.auto_heal = "true";
- }
-
- if (category === "ocr" || category === "all") {
- defaultConfigs.ocr_language = "zh-CN";
- defaultConfigs.ocr_confidence = "80";
- defaultConfigs.ocr_timeout = "5000";
- defaultConfigs.ocr_retry = "3";
- }
-
- if (category === "ui" || category === "all") {
- defaultConfigs.ui_theme = "dark";
- defaultConfigs.ui_font_size = "16";
- defaultConfigs.ui_show_toolbar = "true";
- defaultConfigs.ui_animation = "true";
- }
-
- if (category === "network" || category === "all") {
- defaultConfigs.network_base_url = "https://api.example.com";
- defaultConfigs.network_version = "v2";
- defaultConfigs.network_timeout = "10000";
- defaultConfigs.network_retries = "3";
- }
-
- // ±£´æµ½ config
- for (var key in defaultConfigs) {
- config.setConfig("AIWROK_" + key, defaultConfigs[key]);
- }
-
- // ͬʱ±£´æµ½Îļþ
- saveConfigToFile(defaultConfigs);
-
- printl("[H5¡úNative] »Ö¸´Ä¬ÈÏÅäÖÃ: " + category);
- LogManagerH5.warn("🗑️ Òѻָ´" + category + "ĬÈÏÅäÖÃ");
- return JSON.stringify(defaultConfigs);
- } catch (e) {
- printl("[´íÎó] »Ö¸´Ä¬ÈÏÅäÖÃʧ°Ü: " + e.message);
- LogManagerH5.error("✗ »Ö¸´Ê§°Ü: " + e.message);
- return "{}";
- }
- };
- /**
- * Toast Ìáʾ£¨¹© H5 µ÷Óã©
- * @param {string} message - ÌáʾÏûÏ¢
- */
- this.showToast = function(message) {
- printl("[H5¡úNative] Toast: " + message);
- toast(message);
- };
- /**
- * Ìí¼ÓÈÕÖ¾£¨¹© H5 µ÷Óã©
- * @param {string} message - ÈÕÖ¾ÏûÏ¢
- * @param {string} level - ÈÕÖ¾¼¶±ð
- */
- this.addNativeLog = function(message, level) {
- printl("[H5 ÈÕÖ¾][" + level + "] " + message);
- };
- /**
- * »ñÈ¡ÅäÖÃÎļþ·¾¶£¨¹© H5 µ÷Óã©
- * @returns {string} ÅäÖÃÎļþ·¾¶
- */
- this.getConfigFilePath = function() {
- return CONFIG_FILE_PATH;
- };
- /**
- * ´ÓÎļþ¼ÓÔØÅäÖ㨹© H5 µ÷Óã©
- * @returns {string} JSON ×Ö·û´®¸ñʽµÄÅäÖÃ
- */
- this.loadConfigFromFile = function() {
- try {
- var configs = loadConfigFromFile();
- // ͬ²½µ½ config ϵͳ
- for (var key in configs) {
- config.setConfig("AIWROK_" + key, configs[key]);
- }
- printl("[H5¡úNative] ´ÓÎļþ¼ÓÔØÅäÖÃ: " + Object.keys(configs).length + " ¸öÅäÖÃÏî");
- LogManagerH5.success("📂 ÒÑ´ÓÎļþ¼ÓÔØÅäÖÃ");
- return JSON.stringify(configs);
- } catch (e) {
- printl("[´íÎó] ´ÓÎļþ¼ÓÔØÅäÖÃʧ°Ü: " + e.message);
- LogManagerH5.error("✗ ¼ÓÔØÊ§°Ü: " + e.message);
- return "{}";
- }
- };
- /**
- * ±£´æÅäÖõ½Îļþ£¨¹© H5 µ÷Óã©
- * @returns {boolean} ÊÇ·ñ³É¹¦
- */
- this.saveConfigToFile = function() {
- try {
- // ´Ó config ϵͳ»ñÈ¡ËùÓÐÅäÖÃ
- var allKeys = [
- "game_name", "task_delay", "max_rounds", "enable_combat", "auto_heal"
- ];
- var configs = {};
- for (var i = 0; i < allKeys.length; i++) {
- var key = allKeys[i];
- var value = config.getConfig("AIWROK_" + key, "");
- if (value) {
- configs[key] = value;
- }
- }
-
- // ±£´æµ½Îļþ
- var success = saveConfigToFile(configs);
- if (success) {
- printl("[H5¡úNative] ÅäÖÃÒѱ£´æµ½Îļþ: " + CONFIG_FILE_PATH);
- LogManagerH5.success("💾 ÅäÖÃÒѱ£´æµ½Îļþ");
- }
- return success;
- } catch (e) {
- printl("[´íÎó] ±£´æµ½Îļþʧ°Ü: " + e.message);
- LogManagerH5.error("✗ ±£´æÊ§°Ü: " + e.message);
- return false;
- }
- };
- printl("✓ H5 ½»»¥·½·¨×¢²áÍê³É");
- printl(" - this.setConfig");
- printl(" - this.getConfig");
- printl(" - this.batchSetConfigs");
- printl(" - this.batchGetConfigs");
- printl(" - this.exportAllConfigs");
- printl(" - this.resetToDefault");
- printl(" - this.showToast");
- printl(" - this.addNativeLog");
- printl(" - this.getConfigFilePath ⭐ ÐÂÔö");
- printl(" - this.loadConfigFromFile ⭐ ÐÂÔö");
- printl(" - this.saveConfigToFile ⭐ ÐÂÔö");
- LogManagerH5.success("✓ Native ÇŽӷ½·¨ÒѾÍÐ÷");
- // ============================================
- // HID »¬¶¯¹¦ÄÜÑÝʾ
- // ============================================
- printl("\n=== HID »¬¶¯¹¦ÄÜÑÝʾ ===");
- // µÈ´ý H5 Ò³ÃæÍêÈ«¼ÓÔØ
- _sleep(2000);
- // ÑÝʾ HID »¬¶¯ - ʹÓà hid.swip() ·½·¨
- printl("\n👆 ÑÝʾ 1: ÏòÏ»¬¶¯£¨²é¿´µ×²¿ÄÚÈÝ£©");
- try { toast("👆 ÏòÏ»¬¶¯..."); } catch(e) {}
- try {
- // hid.swip(x1, y1, x2, y2, press, swipTime, delayUp)
- // x1=540, y1=300 (Æðµã)
- // x2=540, y2=1200 (Öյ㣬ÏòÏÂ)
- // press=50 (°´Ïµȴý50ms)
- // swipTime=800 (»¬¶¯Ê±³¤800ms)
- // delayUp=100 (½áÊøºóÑÓ³Ù100mşÆð)
- hid.swip(540, 300, 540, 1200, 50, 800, 100);
- printl("✅ HID ÏòÏ»¬¶¯Ö´Ðгɹ¦");
- } catch(e) {
- printl("❌ HID »¬¶¯Ê§°Ü: " + e.message);
- }
- _sleep(2500);
- printl("\n👆 ÑÝʾ 2: ÏòÉÏ»¬¶¯£¨·µ»Ø¶¥²¿£©");
- try { toast("👆 ÏòÉÏ»¬¶¯..."); } catch(e) {}
- try {
- // hid.swip(x1, y1, x2, y2, press, swipTime, delayUp)
- // x1=540, y1=1200 (Æðµã£¬µ×²¿)
- // x2=540, y2=300 (Öյ㣬¶¥²¿£¬ÏòÉÏ)
- hid.swip(540, 1200, 540, 300, 50, 800, 100);
- printl("✅ HID ÏòÉÏ»¬¶¯Ö´Ðгɹ¦");
- } catch(e) {
- printl("❌ HID »¬¶¯Ê§°Ü: " + e.message);
- }
- _sleep(1500);
- printl("✓ HID »¬¶¯ÑÝʾÍê³É");
- // ============================================
- // ÑÝʾ£ºÔ¤ÉèÅäÖÃÊý¾Ý
- // ============================================
- _sleep(1000);
- printl("\n=== Ô¤ÉèÅäÖÃÊý¾Ý ===");
- try { toast("⚙️ ¼ÓÔØÄ¬ÈÏÅäÖÃ..."); } catch(e) {}
- setConfig("game_name", "ÃλÃÎ÷ÓÎ");
- setConfig("task_delay", "2000");
- setConfig("max_rounds", "10");
- setConfig("enable_combat", "true");
- setConfig("auto_heal", "true");
- printl("✓ Ô¤ÉèÅäÖÃÍê³É");
- LogManagerH5.success("✓ ³õʼÅäÖÃÒѼÓÔØ");
- try { toast("✅ ÅäÖüÓÔØÍê³É"); } catch(e) {}
- printl("\n=== ÅäÖùÜÀíÆ÷ÒѾÍÐ÷ ===");
- printl("✓ H5 ½çÃæ¿ÉÒÔ½øÐпÉÊÓ»¯ÅäÖùÜÀí");
- printl("✓ ËùÓÐÅäÖÃ×Ô¶¯±£´æµ½ config ϵͳ");
- printl("✓ Ö§³Ö HID »¬¶¯¡¢Toast Ìáʾ¡¢CONFIG ²Ù×÷");
- printl("\nÌáʾ£ºÔÚ H5 ½çÃæÖвÙ×÷ÅäÖü´¿Éʵʱͬ²½");
- // ============================================
- // Toast ÑÝʾ
- // ============================================
- _sleep(2000);
- try { toast("🎉 »¶ÓʹÓà AIWROK ÅäÖÃÖÐÐÄ"); } catch(e) {}
- _sleep(1500);
- try { toast("💾 µã»÷°´Å¥±£´æÅäÖÃ"); } catch(e) {}
- _sleep(1500);
- try { toast("📂 µã»÷°´Å¥¼ÓÔØÅäÖÃ"); } catch(e) {}
- _sleep(1500);
- try { toast("🔧 ²âÊÔ CONFIG ¹¦ÄÜ"); } catch(e) {}
- printl("\n✓ ËùÓÐÑÝʾÍê³É£¬ÏÖÔÚ¿ÉÒÔʹÓà H5 ½çÃæÁË");
¸´ÖÆ´úÂë
|
|