From 30859ca8f2175475d2c666353bc27f3b2ceede53 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 22 八月 2024 13:43:47 +0800 Subject: [PATCH] 2024年08月22日13:43:45 --- app/src/main/java/com/hdl/photovoltaic/other/HdlLogLogic.java | 202 +++++++++++++++++++++++++++----------------------- 1 files changed, 110 insertions(+), 92 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlLogLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlLogLogic.java index 986d82f..ff3cde6 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlLogLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlLogLogic.java @@ -1,113 +1,131 @@ package com.hdl.photovoltaic.other; -import android.util.Log; + +import android.util.LruCache; import com.google.gson.Gson; +import com.hdl.photovoltaic.config.UserConfigManage; +import com.hdl.photovoltaic.utils.TimeUtils; /** * 鏃ュ織閫昏緫 */ public class HdlLogLogic { + //鏄惁闇�瑕佹墦鍗板埌Logcat涓�(false涓嶉渶瑕佹墦鍗�) + public static boolean isPrintLogcat = true; + + //榛樿鎵撳嵃鏍囬 + private static String logTitle = "鑷畾涔夎緭鍑烘墦鍗颁俊鎭�"; + + private static Gson gson = new Gson(); /** - * 鏄惁闇�瑕佹墦鍗�(true涓嶉渶瑕佹墦鍗�) - */ - public static boolean isDebug = false; - - private static volatile HdlLogLogic sHdlLogLogic; - - /** - * 鑾峰彇褰撳墠瀵硅薄 + * java鎵撳嵃 * - * @return HdlLogLogic + * @param customizeContentFormat 鑷畾涔夊唴瀹规牸寮� */ - public static synchronized HdlLogLogic getInstance() { - if (sHdlLogLogic == null) { - synchronized (HdlLogLogic.class) { - if (sHdlLogLogic == null) { - sHdlLogLogic = new HdlLogLogic(); - } + public static void print(String customizeContentFormat) { + printBase(customizeContentFormat, "0", false); + } + + /** + * java鎵撳嵃 + * + * @param customizeContentFormat 鑷畾涔夊唴瀹规牸寮� + * @param isAddToMemory 鏄惁鍔犲叆鍐呭瓨(鏈湴鏃ュ織鐢ㄥ埌) + */ + public static void print(String customizeContentFormat, boolean isAddToMemory) { + printBase(customizeContentFormat, "0", isAddToMemory); + } + + /** + * java鎵撳嵃 + * + * @param msg 鑷畾涔夊唴瀹规牸寮� + * @param code 鐘舵�佺爜 + * @param isAddToMemory 鏄惁鍔犲叆鍐呭瓨(鏈湴鏃ュ織鐢ㄥ埌) + */ + public static void print(String msg, int code, boolean isAddToMemory) { + printBase(msg, code + "", isAddToMemory); + } + + + /** + * java鎵撳嵃鍜屽瓨鍌ㄦ棩蹇� + * + * @param msg 淇℃伅鎻忚堪 + * @param code 鐘舵�� + * @param isAddToMemory 鏄惁鍔犲叆鍐呭瓨(鏈湴鏃ュ織鐢ㄥ埌) + */ + private static void printBase(String msg, String code, boolean isAddToMemory) { + try { + CustomLogObject customLogObject = new CustomLogObject(); + customLogObject.setMsgOrData(msg); + customLogObject.setCode(code); + String json = logTitle + (UserConfigManage.getInstance().isBAccount() ? "(B绔�)==" : "(C绔�)==") + gson.toJson(customLogObject); + if (isPrintLogcat) { + System.out.println(json); } - } - return sHdlLogLogic; - } - - /** - * android鎵撳嵃 - * - * @param tag 鏍囩 - * @param mgs 閿欒淇℃伅 - */ - public static void print(String tag, String mgs) { - if (isDebug) { - return; - } - Log.d(tag, mgs); - } - - /** - * java鎵撳嵃 - * - * @param mgs 杈撳嚭淇℃伅 - */ - public static void print(String mgs) { - if (isDebug) { - return; - } - System.out.println(mgs); - } - - /** - * java鎵撳嵃 - * - * @param tag 鏍囬 - * @param mgs 閿欒淇℃伅 - * @param code 閿欒鐮� - */ - public static void print(String tag, String mgs, int code) { - if (isDebug) { - return; - } - System.out.println(title + tag + "======" + mgs + "(" + code + ")"); - } - - /** - * java鎵撳嵃 - * - * @param tag 鏍囬 - * @param mgs 閿欒淇℃伅 - * @param code 閿欒鐮� - */ - public static void print(String tag, String mgs, String code) { - if (isDebug) { - return; - } - System.out.println(title + tag + "======" + mgs + "(" + code + ")"); - } - - /** - * java鎵撳嵃 - * - * @param tag 鏍囬 - * @param o 閿欒淇℃伅 - */ - public static void print(String tag, Object o) { - - if (isDebug) { - return; - } - if (o == null) { - System.out.println(title + tag); - } else { - try { - System.out.println(title + tag + "======" + new Gson().toJson(o)); - } catch (Exception e) { - System.out.println(title + tag + "======" + e.getMessage()); + if (isAddToMemory) { + writeLog(json); } + } catch (Exception ignored) { } } - private static final String title = "鑷畾涔夎緭鍑烘墦鍗颁俊鎭�:"; + + /** + * 鍐欏叆鏃ュ織鍐呭鍒版湰鍦� + * + * @param strLog 鍐欏叆鍐呭 + */ + public static void writeLog(String strLog) { + synchronized (HdlLogLogic.class) { + strLog = TimeUtils.getTimeFromTimestamp(System.currentTimeMillis()) + "s%" + " " + strLog;//鍔犳墦鍗版椂闂�(s%鍗犱綅绗︼紝璁剧疆鏄剧ず鏃堕棿涓嶅悓瀛椾綋棰滆壊) + HdlFileLogic.getInstance().appendFile(HdlFileLogic.getInstance().getLogFileNamePath(), strLog); + } + } + + /** + * 璇诲彇鏃ュ織鍐呭 + * + * @return 鏃ュ織鍐呭 + */ + public static String readLog() { + return HdlFileLogic.getInstance().readFile(HdlFileLogic.getInstance().getLogFileNamePath()); + } + + + /** + * 鑷畾涔夋棩蹇楃被 + */ + static class CustomLogObject { + + //淇℃伅鎻忚堪 + private String msgOrData; + + //鐘舵�佺爜 + private String code; + + public String getMsgOrData() { + return msgOrData == null ? "" : msgOrData; + } + + public void setMsgOrData(String msgOrData) { + this.msgOrData = msgOrData; + } + + public String getCode() { + return code == null ? "0" : code; + } + + public void setCode(String code) { + this.code = code; + } + + + } + } -- Gitblit v1.8.0