투케이2K

76. (TWOK/UTIL) [Android/Java] S_Log - 로그 디버그 및 운영 구분 표시 설정 클래스 본문

투케이2K 유틸파일

76. (TWOK/UTIL) [Android/Java] S_Log - 로그 디버그 및 운영 구분 표시 설정 클래스

투케이2K 2022. 10. 18. 13:25

[설 명]

프로그램 : Android / Java

설 명 : S_Log - 로그 디버그 및 운영 구분 표시 설정 클래스

 

[소스 코드]

package com.example.testapp;

import android.util.Log;

public class S_Log {


    /**
     * // ------------------------------------
     * TODO [클래스 설명]
     * // ------------------------------------
     * 1. 빌드 환경 debug , release 구분 로그 표시 설정 실시 방법
     * // ------------------------------------
     * 2. BuildConfig.DEBUG : 안드로이드 빌드 환경 debug , release 모드를 구분할 수 있습니다
     * // ------------------------------------
     * 3. BuildConfig.DEBUG 값은 apk 및 aab 파일을 release 로 배포 시 false 값으로 변경됩니다
     * // ------------------------------------
     * 4. 호출 방법 :
     *
     * S_Log.d("A_Main Class", "onCreate 함수 수행");
     *
     * S_Log.infoPrint("A_Intro", "onCreate", "액티비티 시작 수행", "USER = TWOK / AGE = 29");
     * // ------------------------------------
     * */


    // TODO [전역 변수 선언 실시]
    // private final static boolean DEBUG_VALUE = BuildConfig.DEBUG; // [true = 디버그 모드 / false = 릴리즈 모드]
    private final static boolean DEBUG_VALUE = true; // [true = 디버그 모드 / false = 릴리즈 모드]
    
    private final static boolean DEV_MODE = true; // [true = 개발 모드 지정 / false = 운영 모드 지정]




    // TODO [Log.d]
    public static void d(String tag, String msg){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.d(String.valueOf(tag),String.valueOf(msg));
        }
    }





    // TODO [Log.i]
    public static void i(String tag, String msg){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.i(String.valueOf(tag),String.valueOf(msg));
        }
    }





    // TODO [Log.w]
    public static void w(String tag, String msg){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.w(String.valueOf(tag),String.valueOf(msg));
        }
    }





    // TODO [Log.e]
    public static void e(String tag, String msg){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.e(String.valueOf(tag),String.valueOf(msg));
        }
    }





    // TODO [Log.v]
    public static void v(String tag, String msg){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.v(String.valueOf(tag),String.valueOf(msg));
        }
    }




    // TODO [일반 단일 정보 출력]
    public static void infoPrint(String className, String methodName, String description, String data){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.i("---","---" + "\n");
            Log.d("//===========//","================================================");
            Log.i("","\n"+"[CLASS :: "+String.valueOf(className)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[METHOD :: "+String.valueOf(methodName)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[DESCRIPTION :: "+String.valueOf(description)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[DATA :: "+String.valueOf(data)+"]");
            Log.d("//===========//","================================================");
            Log.i("---","---" + "\n");
        }
    }





    // TODO [중요 단일 정보 출력]
    public static void importantPrint(String className, String methodName, String description, String data){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.i("---","---" + "\n");
            Log.w("//===========//","================================================");
            Log.i("","\n"+"[CLASS :: "+String.valueOf(className)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[METHOD :: "+String.valueOf(methodName)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[DESCRIPTION :: "+String.valueOf(description)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[DATA :: "+String.valueOf(data)+"]");
            Log.w("//===========//","================================================");
            Log.i("---","---" + "\n");
        }
    }





    // TODO [에러 단일 정보 출력]
    public static void errorPrint(String className, String methodName, String description, String data){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.i("---","---" + "\n");
            Log.e("//===========//","================================================");
            Log.i("","\n"+"[CLASS :: "+String.valueOf(className)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[METHOD :: "+String.valueOf(methodName)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[DESCRIPTION :: "+String.valueOf(description)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[DATA :: "+String.valueOf(data)+"]");
            Log.e("//===========//","================================================");
            Log.i("---","---" + "\n");
        }
    }





    // TODO [인풋 및 아웃풋 로그 출력]
    public static void inputOutputPrint(String className, String methodName, String description, String input, String output){
        if (DEBUG_VALUE == true && DEV_MODE == true){ // [디버그 환경 및 개발 모드일 경우 만]
            Log.i("---","---" + "\n");
            Log.d("//===========//","================================================");
            Log.i("","\n"+"[CLASS :: "+String.valueOf(className)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[METHOD :: "+String.valueOf(methodName)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[DESCRIPTION :: "+String.valueOf(description)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[INPUT :: "+String.valueOf(input)+"]");
            Log.i("","\n"+"-----------------------------------------");
            Log.i("","\n"+"[RETURN :: "+String.valueOf(output)+"]");
            Log.d("//===========//","================================================");
            Log.i("---","---" + "\n");
        }
    }


} // TODO [클래스 종료]

 


 

반응형
Comments