투케이2K

901. (Android/Java) [간단 소스] Handler 핸들러 생성 및 sendEmptyMessageDelayed 메시지 전송 , count 카운트 체크 재호출 구현 본문

Android

901. (Android/Java) [간단 소스] Handler 핸들러 생성 및 sendEmptyMessageDelayed 메시지 전송 , count 카운트 체크 재호출 구현

투케이2K 2024. 11. 19. 20:02

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Java / Kotlin

 

[소스 코드]

 

// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------

- 언어 : Java

- 개발 툴 : Android Studio

- 구분 : 간단 소스

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[소스 코드]
// --------------------------------------------------------------------------------------


// ----------------------------------------------
// TODO [필요 변수 선언]
// ----------------------------------------------
final Handler[] checkHandler = {null}; // [check 핸들러]
final int[] searchCount = {1}; // [카운트 변수]

final int MAC_COUNT = 5; // [카운트 MAX 값]
final int SEARCH_DELAY = 3000; // [재호출 딜레이 값]



// ----------------------------------------------
// TODO [핸들러 생성 및 로직 처리 수행]
// ----------------------------------------------
checkHandler[0] = new Handler(Looper.getMainLooper()){
    @Override
    public void handleMessage(@androidx.annotation.NonNull Message msg) {
        super.handleMessage(msg);

        if (searchCount[0] <= MAC_COUNT){ // TODO [MAX 카운트 횟수 미만]
            S_Log._W_(ACTIVITY_NAME + " :: Check Count :: " + String.valueOf(searchCount[0]), null);

            // TODO [카운트 증가 / 재호출 수행]
            searchCount[0] ++ ;
            checkHandler[0].sendEmptyMessageDelayed(0, SEARCH_DELAY);

        }
        else { // TODO [마지막 체크 >> 종료 처리]
            S_Log._E_(ACTIVITY_NAME + " :: End Folling Check :: " + String.valueOf(searchCount[0]), null);

        } 
    }
};



// ----------------------------------------------
// TODO [Start :: 핸들러 체크 호출]
// ----------------------------------------------
checkHandler[0].sendEmptyMessage(1000);


// -----------------------------------------------------------------------------------

 

반응형
Comments