투케이2K

247. (AndroidStudio/android/java) 최근 작업 앱 수행 목록 지우기 이벤트 감지 - 서비스 onTaskRemoved 본문

Android

247. (AndroidStudio/android/java) 최근 작업 앱 수행 목록 지우기 이벤트 감지 - 서비스 onTaskRemoved

투케이2K 2022. 1. 8. 09:28

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : java

 

[소스 코드]

        <!-- AndroidManifest.xml 파일 내 선언 -->
        <!-- 서비스 : 사용자 작업 최근 앱 목록 작업 날림 이벤트 감지 -->
        <service
            android:name=".S_ProgramTaskService"
            android:enabled="true"
            android:exported="true"
            android:stopWithTask="false" />
        <!-- android:stopWithTask="false" : 사용자가 앱 목록 날림 이벤트 감지 -->

 

 

package com.test.app;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;

public class S_ProgramTaskService extends Service {


    /**
     * TODO [클래스 설명]
     * // -----------------------------------------
     * 1. 사용자가 앱 작업 목록 날림 , 지우기 이벤트 감지 서비스
     * 2. 중요 사항 : AndroidManifest.xml 에서 서비스 적용 시 android:stopWithTask="false" 설정
     * 3. 호출 방법 : 최상위 클래스에서 startService(new Intent(this, S_ProgramTaskService.class)); 호출
     * // -----------------------------------------
     * */



    //TODO [onStartCommand : startService() 로 서비스를 시작할 때 호출]
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        Log.i("---","---");
        Log.w("//===========//","================================================");
        Log.i("","\n"+"[S_ProgramTaskService >> onStartCommand() :: 프로그램 작업 태스크 감지 서비스 실행]");
        Log.w("//===========//","================================================");
        Log.i("---","---");
        return START_STICKY;
    }



    // TODO [onBind 서비스 실행 부분 : bindService() 로 바인딩을 실행할 때 호출]
    @Override
    public IBinder onBind(Intent intent) {
        Log.i("---","---");
        Log.w("//===========//","================================================");
        Log.i("","\n"+"[S_ProgramTaskService >> onBind() :: 프로그램 작업 태스크 감지 서비스 실행]");
        Log.w("//===========//","================================================");
        Log.i("---","---");
        return null;
    }



    // TODO [사용자가 앱 작업 목록 날림 이벤트 감지 부분]
    @Override
    public void onTaskRemoved(Intent rootIntent) {
        Log.i("---","---");
        Log.e("//===========//","================================================");
        Log.i("","\n"+"[S_ProgramTaskService >> onTaskRemoved() :: 프로그램 작업 태스크 감지 서비스 종료]");
        Log.e("//===========//","================================================");
        Log.i("---","---");

        // [서비스 종료]
        stopSelf();
    }

} // TODO [클래스 종료]
 

 

반응형
Comments