|
|
AIWROKÅäÖöÁд¹¦ÄÜÑÝʾʾÀý
- // AIWROKÈí¼þ°²×¿½»Á÷QQȺ711841924
- // Æ»¹ûÄÚ²âÈí¼þQQȺ648461709
- // AIWROKÅäÖöÁд¹¦ÄÜÍêÕûÑÝʾʾÀý
- // ±¾Ê¾Àý¼¯³ÉÁËËùÓÐÅäÖöÁдÏà¹Ø¹¦ÄÜ£¬°üº¬getConfigºÍsetConfigµÄÏêϸʹÓ÷½·¨
- // ×¢Ò⣺´Ë´úÂëÐèÔÚAIWROK»·¾³ÖÐÔËÐУ¬ÒòΪconfig¶ÔÏóÓÉAIWROKÌṩ
- /**
- * ÅäÖÃÎļþ·¾¶³£Á¿
- * ÔÚʵ¼ÊÓ¦ÓÃÖУ¬¸ù¾Ý²»Í¬Æ½Ì¨ºÍÐèÇóÉèÖúÏÊʵÄ·¾¶
- */
- var CONFIG_FILE_PATH = '/sdcard/aiwrok_config.ini';
- /**
- * ÅäÖöÁдÑÝʾÖ÷º¯Êý
- */
- function configDemo() {
- printl('===== AIWROKÅäÖöÁд¹¦ÄÜÑÝʾ =====');
-
- // ²½Öè1£ºÑÝʾдÈëÅäÖÃ
- demonstrateSetConfig();
-
- // ²½Öè2£ºÑÝʾ¶ÁÈ¡ÅäÖÃ
- demonstrateGetConfig();
-
- // ²½Öè3£ºÑÝʾĬÈÏÖµµÄʹÓÃ
- demonstrateDefaultValue();
-
- // ²½Öè4£ºÑÝʾÅäÖÃÐ޸ĺ͸üÐÂ
- demonstrateUpdateConfig();
-
- // ²½Öè5£ºÑÝʾʵ¼ÊÓ¦Óó¡¾°
- demonstrateRealWorldScenario();
-
- printl('\n===== ÑÝʾÍê³É =====');
- }
- /**
- * ÑÝʾsetConfig·½·¨µÄʹÓÃ
- */
- function demonstrateSetConfig() {
- printl('\n1. ÑÝʾдÈëÅäÖã¨setConfig£©:');
-
- // ²ÎÊý˵Ã÷£º
- // arg0: ÅäÖÃÎļþ·¾¶
- // arg1: ÅäÖÃÏîÃû³Æ
- // arg2: ÅäÖÃÏîµÄÖµ
-
- try {
- // дÈëÓû§ÅäÖÃ
- config.setConfig(CONFIG_FILE_PATH, 'username', 'testuser');
- printl(' - ÒÑдÈëÓû§ÃûÅäÖÃ');
-
- // дÈëÓ¦ÓÃÖ÷ÌâÅäÖÃ
- config.setConfig(CONFIG_FILE_PATH, 'theme', 'dark');
- printl(' - ÒÑдÈëÖ÷ÌâÅäÖÃ');
-
- // дÈë×ÖÌå´óСÅäÖÃ
- config.setConfig(CONFIG_FILE_PATH, 'font_size', '16');
- printl(' - ÒÑдÈë×ÖÌå´óСÅäÖÃ');
-
- // дÈë²¼¶ûÀàÐÍÅäÖã¨ÒÔ×Ö·û´®ÐÎʽ´æ´¢£©
- config.setConfig(CONFIG_FILE_PATH, 'auto_start', 'true');
- printl(' - ÒÑдÈë×Ô¶¯Æô¶¯ÅäÖÃ');
- } catch (e) {
- printl(' - дÈëÅäÖÃʱ³ö´í: ' + e.message);
- }
- }
- /**
- * ÑÝʾgetConfig·½·¨µÄʹÓÃ
- */
- function demonstrateGetConfig() {
- printl('\n2. ÑÝʾ¶ÁÈ¡ÅäÖã¨getConfig£©:');
-
- // ²ÎÊý˵Ã÷£º
- // arg0: ÅäÖÃÎļþ·¾¶
- // arg1: ÅäÖÃÏîÃû³Æ
- // arg2: µ±ÅäÖò»´æÔÚʱµÄĬÈÏÖµ
-
- try {
- // ¶ÁÈ¡Óû§ÃûÅäÖÃ
- var username = config.getConfig(CONFIG_FILE_PATH, 'username', 'default_user');
- printl(' - Óû§ÃûÅäÖÃ: ' + username);
-
- // ¶ÁÈ¡Ö÷ÌâÅäÖÃ
- var theme = config.getConfig(CONFIG_FILE_PATH, 'theme', 'light');
- printl(' - Ö÷ÌâÅäÖÃ: ' + theme);
-
- // ¶ÁÈ¡×ÖÌå´óСÅäÖÃ
- var fontSize = config.getConfig(CONFIG_FILE_PATH, 'font_size', '14');
- printl(' - ×ÖÌå´óСÅäÖÃ: ' + fontSize);
-
- // ¶ÁÈ¡×Ô¶¯Æô¶¯ÅäÖÃ
- var autoStart = config.getConfig(CONFIG_FILE_PATH, 'auto_start', 'false');
- printl(' - ×Ô¶¯Æô¶¯ÅäÖÃ: ' + autoStart);
- } catch (e) {
- printl(' - ¶ÁÈ¡ÅäÖÃʱ³ö´í: ' + e.message);
- }
- }
- /**
- * ÑÝʾĬÈÏÖµµÄʹÓÃ
- */
- function demonstrateDefaultValue() {
- printl('\n3. ÑÝʾĬÈÏÖµµÄʹÓÃ:');
-
- try {
- // ³¢ÊÔ¶Áȡһ¸ö²»´æÔÚµÄÅäÖÃÏӦ¸Ã·µ»ØÄ¬ÈÏÖµ
- var nonExistentConfig = config.getConfig(CONFIG_FILE_PATH, 'non_existent_key', 'default_value');
- printl(' - ²»´æÔÚµÄÅäÖÃÏî·µ»ØÄ¬ÈÏÖµ: ' + nonExistentConfig);
-
- // ³¢ÊÔ´ÓÒ»¸ö¿ÉÄܲ»´æÔÚµÄÅäÖÃÎļþ¶ÁÈ¡£¬Ò²Ó¦¸Ã·µ»ØÄ¬ÈÏÖµ
- var fromNonExistentFile = config.getConfig('/sdcard/non_existent_config.ini', 'test_key', 'fallback_value');
- printl(' - ´Ó²»´æÔÚµÄÎļþ¶ÁÈ¡·µ»ØÄ¬ÈÏÖµ: ' + fromNonExistentFile);
- } catch (e) {
- printl(' - ¶ÁÈ¡ÅäÖÃʱ³ö´í: ' + e.message);
- }
- }
- /**
- * ÑÝʾÅäÖõĸüÐÂ
- */
- function demonstrateUpdateConfig() {
- printl('\n4. ÑÝʾ¸üÐÂÅäÖÃ:');
-
- try {
- // ÏȶÁÈ¡µ±Ç°Ö÷ÌâÅäÖÃ
- var oldTheme = config.getConfig(CONFIG_FILE_PATH, 'theme', 'light');
- printl(' - ¸üÐÂǰÖ÷ÌâÅäÖÃ: ' + oldTheme);
-
- // ¸üÐÂÖ÷ÌâÅäÖÃ
- config.setConfig(CONFIG_FILE_PATH, 'theme', 'light');
- printl(' - ÒѸüÐÂÖ÷ÌâÅäÖÃΪlight');
-
- // ÑéÖ¤¸üÐÂÊÇ·ñ³É¹¦
- var newTheme = config.getConfig(CONFIG_FILE_PATH, 'theme', 'light');
- printl(' - ¸üкóÖ÷ÌâÅäÖÃ: ' + newTheme);
- } catch (e) {
- printl(' - ¸üÐÂÅäÖÃʱ³ö´í: ' + e.message);
- }
- }
- /**
- * ÑÝʾʵ¼ÊÓ¦Óó¡¾°
- */
- function demonstrateRealWorldScenario() {
- printl('\n5. ʵ¼ÊÓ¦Óó¡¾°ÑÝʾ - Óû§ÉèÖùÜÀí:');
-
- try {
- // ¼ÙÉèÕâÊÇÓ¦ÓÃÆô¶¯Ê±µÄÅäÖüÓÔØ¹ý³Ì
- printl(' - ¼ÓÔØÓû§ÉèÖÃ...');
-
- // ¶ÁÈ¡²¢Ó¦ÓÃÓû§ÉèÖÃ
- var appSettings = {
- username: config.getConfig(CONFIG_FILE_PATH, 'username', 'Guest'),
- theme: config.getConfig(CONFIG_FILE_PATH, 'theme', 'light'),
- fontSize: parseInt(config.getConfig(CONFIG_FILE_PATH, 'font_size', '14'), 10),
- autoStart: config.getConfig(CONFIG_FILE_PATH, 'auto_start', 'false') === 'true'
- };
-
- // ´òÓ¡¼ÓÔØµÄÉèÖÃ
- printl(' - ÒѼÓÔØµÄÓû§ÉèÖÃ:');
- printl(' * Óû§Ãû: ' + appSettings.username);
- printl(' * Ö÷Ìâ: ' + appSettings.theme);
- printl(' * ×ÖÌå´óС: ' + appSettings.fontSize);
- printl(' * ×Ô¶¯Æô¶¯: ' + (appSettings.autoStart ? '¿ªÆô' : '¹Ø±Õ'));
-
- // Ä£ÄâÓû§ÐÞ¸ÄÉèÖò¢±£´æ
- printl('\n - Ä£ÄâÓû§ÐÞ¸ÄÉèÖÃ...');
- appSettings.fontSize = 18;
- appSettings.autoStart = false;
-
- // ±£´æÐ޸ĺóµÄÉèÖÃ
- printl(' - ±£´æÐ޸ĺóµÄÉèÖÃ...');
- config.setConfig(CONFIG_FILE_PATH, 'font_size', appSettings.fontSize.toString());
- config.setConfig(CONFIG_FILE_PATH, 'auto_start', appSettings.autoStart ? 'true' : 'false');
-
- printl(' - ÉèÖñ£´æ³É¹¦!');
- } catch (e) {
- printl(' - Ó¦Óó¡¾°ÑÝʾ³ö´í: ' + e.message);
- }
- }
- /**
- * ¸¨Öúº¯Êý£º´´½¨ÅäÖùÜÀí¶ÔÏó
- * Ìṩ¸üÓѺõÄÅäÖùÜÀí½Ó¿Ú
- */
- function createConfigManager(filePath) {
- // ·µ»ØÒ»¸öÅäÖùÜÀíÆ÷¶ÔÏó
- return {
- filePath: filePath,
-
- // ÉèÖÃÅäÖÃÏî
- set: function(key, value) {
- try {
- config.setConfig(this.filePath, key, value.toString());
- return true;
- } catch (e) {
- printl('ÉèÖÃÅäÖÃʧ°Ü: ' + e.message);
- return false;
- }
- },
-
- // »ñÈ¡ÅäÖÃÏî
- get: function(key, defaultValue) {
- try {
- return config.getConfig(this.filePath, key, defaultValue !== undefined ? defaultValue.toString() : '');
- } catch (e) {
- printl('»ñÈ¡ÅäÖÃʧ°Ü: ' + e.message);
- return defaultValue !== undefined ? defaultValue : '';
- }
- },
-
- // »ñÈ¡²¼¶ûÀàÐÍÅäÖÃ
- getBoolean: function(key, defaultValue) {
- var value = this.get(key, defaultValue ? 'true' : 'false');
- return value.toLowerCase() === 'true' || value === '1';
- },
-
- // »ñÈ¡Êý×ÖÀàÐÍÅäÖÃ
- getNumber: function(key, defaultValue) {
- var value = this.get(key, defaultValue !== undefined ? defaultValue.toString() : '0');
- return parseFloat(value) || 0;
- }
- };
- }
- /**
- * ÑÝʾʹÓÃÅäÖùÜÀíÆ÷µÄ±ã½ÝÐÔ
- */
- function demonstrateConfigManager() {
- printl('\n6. ÑÝʾÅäÖùÜÀíÆ÷µÄʹÓÃ:');
-
- try {
- // ´´½¨ÅäÖùÜÀíÆ÷ʵÀý
- var appConfig = createConfigManager(CONFIG_FILE_PATH);
-
- // ʹÓÃÅäÖùÜÀíÆ÷¶ÁдÅäÖÃ
- printl(' - ʹÓÃÅäÖùÜÀíÆ÷¶ÁÈ¡ÅäÖÃ:');
- printl(' * Óû§Ãû: ' + appConfig.get('username', 'Anonymous'));
- printl(' * ×ÖÌå´óС(Êý×Ö): ' + appConfig.getNumber('font_size', 14));
- printl(' * ×Ô¶¯Æô¶¯(²¼¶û): ' + appConfig.getBoolean('auto_start', false));
-
- // ʹÓÃÅäÖùÜÀíÆ÷дÈëÅäÖÃ
- printl(' - ʹÓÃÅäÖùÜÀíÆ÷дÈëÅäÖÃ:');
- appConfig.set('app_version', '1.0.0');
- appConfig.set('last_login', new Date().toLocaleString());
- printl(' * ÒÑдÈëÓ¦Óð汾ºÍ×îºóµÇ¼ʱ¼ä');
-
- // Ñé֤дÈë½á¹û
- printl(' * Ó¦Óð汾: ' + appConfig.get('app_version'));
- printl(' * ×îºóµÇ¼ʱ¼ä: ' + appConfig.get('last_login'));
- } catch (e) {
- printl(' - ÅäÖùÜÀíÆ÷ÑÝʾ³ö´í: ' + e.message);
- }
- }
- // Ö´ÐÐÅäÖöÁдÑÝʾ
- configDemo();
- // Ö´ÐÐÅäÖùÜÀíÆ÷ÑÝʾ
- demonstrateConfigManager();
- /**
- * ¸ß¼¶Ó¦Óó¡¾°£ºÅäÖñ¸·ÝÓë»Ö¸´
- */
- function demonstrateConfigBackupAndRestore() {
- printl('\n7. ¸ß¼¶Ó¦Óó¡¾°£ºÅäÖñ¸·ÝÓë»Ö¸´:');
-
- try {
- var backupFilePath = '/sdcard/aiwrok_config_backup.ini';
-
- printl(' - ´´½¨ÅäÖñ¸·Ý...');
- // ¶ÁÈ¡µ±Ç°ËùÓÐÅäÖÃÏî
- var username = config.getConfig(CONFIG_FILE_PATH, 'username', 'Guest');
- var theme = config.getConfig(CONFIG_FILE_PATH, 'theme', 'light');
- var fontSize = config.getConfig(CONFIG_FILE_PATH, 'font_size', '14');
- var autoStart = config.getConfig(CONFIG_FILE_PATH, 'auto_start', 'false');
-
- // дÈ뱸·ÝÎļþ
- config.setConfig(backupFilePath, 'username', username);
- config.setConfig(backupFilePath, 'theme', theme);
- config.setConfig(backupFilePath, 'font_size', fontSize);
- config.setConfig(backupFilePath, 'auto_start', autoStart);
- config.setConfig(backupFilePath, 'backup_date', new Date().toLocaleString());
-
- printl(' - ÅäÖñ¸·ÝÍê³É£¡±¸·Ý·¾¶: ' + backupFilePath);
-
- // Ä£Äâ»Ö¸´²Ù×÷
- printl('\n - Ä£Äâ»Ö¸´ÅäÖÃ...');
- var restoredUsername = config.getConfig(backupFilePath, 'username', 'Guest');
- var restoredTheme = config.getConfig(backupFilePath, 'theme', 'light');
- printl(' - ´Ó±¸·Ý»Ö¸´µÄÓû§Ãû: ' + restoredUsername);
- printl(' - ´Ó±¸·Ý»Ö¸´µÄÖ÷Ìâ: ' + restoredTheme);
- printl(' - ±¸·Ýʱ¼ä: ' + config.getConfig(backupFilePath, 'backup_date', 'δ֪'));
- } catch (e) {
- printl(' - ÅäÖñ¸·Ý»Ö¸´ÑÝʾ³ö´í: ' + e.message);
- }
- }
- /**
- * ¸ß¼¶Ó¦Óó¡¾°£ºÅäÖÃÅúÁ¿²Ù×÷
- */
- function demonstrateBatchConfigOperations() {
- printl('\n8. ¸ß¼¶Ó¦Óó¡¾°£ºÅäÖÃÅúÁ¿²Ù×÷:');
-
- try {
- // ÅúÁ¿Ð´ÈëÅäÖÃ
- printl(' - ÅúÁ¿Ð´ÈëÅäÖÃ...');
- var batchConfig = {
- 'app_name': 'AIWROK Demo App',
- 'app_version': '1.2.3',
- 'developer': 'AIWROK Team',
- 'debug_mode': 'true',
- 'max_retries': '3'
- };
-
- // ±éÀú¶ÔÏó²¢Ð´ÈëËùÓÐÅäÖÃ
- for (var key in batchConfig) {
- if (batchConfig.hasOwnProperty(key)) {
- config.setConfig(CONFIG_FILE_PATH, key, batchConfig[key]);
- printl(' * ÒÑÉèÖÃ: ' + key + ' = ' + batchConfig[key]);
- }
- }
-
- // ÅúÁ¿¶ÁÈ¡ÅäÖÃ
- printl('\n - ÅúÁ¿¶ÁÈ¡ÅäÖÃ...');
- var keysToRead = ['app_name', 'app_version', 'developer', 'debug_mode', 'max_retries'];
- var readConfig = {};
-
- for (var i = 0; i < keysToRead.length; i++) {
- readConfig[keysToRead[i]] = config.getConfig(CONFIG_FILE_PATH, keysToRead[i], 'δÉèÖÃ');
- }
-
- // Êä³ö¶ÁÈ¡µÄÅäÖÃ
- for (var key in readConfig) {
- if (readConfig.hasOwnProperty(key)) {
- printl(' * ' + key + ': ' + readConfig[key]);
- }
- }
- } catch (e) {
- printl(' - ÅúÁ¿ÅäÖòÙ×÷ÑÝʾ³ö´í: ' + e.message);
- }
- }
- // Ö´Ðи߼¶Ó¦Óó¡¾°ÑÝʾ
- demonstrateConfigBackupAndRestore();
- demonstrateBatchConfigOperations();
- printl('\nÌáʾ£ºÔÚʵ¼ÊʹÓÃÖУ¬ÇëÈ·±£ÓÐÕýÈ·µÄÎļþϵͳ·ÃÎÊȨÏÞ£¬²¢¸ù¾ÝÄúµÄʵ¼ÊÐèÇóÐÞ¸ÄÅäÖÃÎļþ·¾¶ºÍÅäÖÃÏî¡£');
- printl('±¾Ê¾ÀýÒѰüº¬ËùÓÐÅäÖöÁдÏà¹Ø¹¦ÄÜ£¬ÎÞÐè´´½¨ÆäËûÎļþ¡£');
¸´ÖÆ´úÂë
|
|