투케이2K

413. (kotlin/코틀린) [유틸 파일] getPhoneUsedTime : 휴대폰 사용 시간, 휴대폰 가동 시간 확인 - SystemClock.elapsedRealtime 본문

Kotlin

413. (kotlin/코틀린) [유틸 파일] getPhoneUsedTime : 휴대폰 사용 시간, 휴대폰 가동 시간 확인 - SystemClock.elapsedRealtime

투케이2K 2023. 9. 8. 20:09

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Kotlin

 

[소스 코드]

        // -----------------------------------------------------------------------------------------
        // TODO [SEARCH FAST] : [RETURN] getPhoneUsedTime : 휴대폰 사용 시간, 휴대폰 가동 시간 확인
        // -----------------------------------------------------------------------------------------
        fun getPhoneUsedTime(mContext: Context): String {

            /**
             * // -----------------------------------------
             * [getPhoneUsedTime  메소드 설명]
             * // -----------------------------------------
             * 1. 휴대폰 사용 시간, 휴대폰 가동 시간 확인
             * // -----------------------------------------
             * 2. 호출 방식 :
             *
             * C_App.getPhoneUsedTime(A_Intro@this)
             *
             * // -----------------------------------------
             * 3. 리턴 데이터 :
             * // -----------------------------------------
             * 4. 추가 설명 :
             *
             * SystemClock.elapsedRealtime() :
             * - 부팅 직후에는 0을 리턴하고 10초가 지났다면 10000이 리턴됩니다
             * - 디바이스가 Sleep 상태에 있어도 시간은 측정이 됩니다
             *
             * SystemClock.uptimeMillis() :
             * - 부팅된 시점부터 현재까지의 시간을 millisecond로 리턴합니다
             * - 디바이스가 Sleep 상태에 있을 때는 시간을 측정하지 않습니다
             * // -----------------------------------------
             */


            // [리턴 값 선언]
            var returnData = ""


            // [로직 처리 실시]
            try {

                val time = SystemClock.elapsedRealtime()

                //returnData = (time / 1000).toString() + " (S)"; // [초]
                //returnData = (time / 60000).toString() + " (M)"; // [분]
                returnData = (time / 3600000).toString() + " (H)" // [시간]
                //returnData = ((time / 1000) / (24*60*60)).toString() + " (D)"; // [일자]

            } catch (e: Exception) {
                S_Log._printStackTrace_(mContext, S_FinalMsg.LOG_BUG_STATE, null, e)
            }


            // [로그 출력 실시]
            ///*
            // ===============================================================
            S_Log._D_("휴대폰 사용 시간, 휴대폰 가동 시간 확인", arrayOf(
                "RETURN :: $returnData"
            ))
            // ===============================================================
            // */


            // [리턴 반환 실시]
            return returnData
        }
 

[결과 출력]

 

D///===========//: ================================================
I/: [LOG :: CLASS PLACE :: com.example.kotlinproject.C_App$Companion.getPhoneUsedTime(C_App.kt:5626)]
I/: ----------------------------------------------------
I/: [LOG :: NOW TIME :: 2023-09-08 16:14:25 금요일]
I/: ----------------------------------------------------
I/: [LOG :: DESCRIPTION :: 휴대폰 사용 시간, 휴대폰 가동 시간 확인]
I/: ----------------------------------------------------
I/: [LOG :: RETURN :: 395 (H)]
D///===========//: ================================================

 

반응형
Comments