본문 바로가기
Android/디버깅

[Android] 앱에서 스크린 캡쳐 막기, recent app 썸네일 가리기

by 붕어사랑 티스토리 2022. 7. 12.
반응형

앱에서 스크린샷을 막는 방법은 아주 간단하다

 

 

액티비티 안에서 FLAG_SECURE를 SET 해주면 된다.

getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);

 

 

허나 이 플래그를 언제 SET해주는게 좋을 까?

 

케이스는 2가지 이다

 

 

1. 앱 사용 내내 스크린샷을 막고 싶을 때

이는 onCreate()에서 set 해주면 된다

public void onCreate() {
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
}

 

 

 

 

2. 앱에서 스크린샷은 허락하나 recent app으로 넘어갈때 스냅샷을 막고 싶을 때

만약 앱에서 screenshot은 허용하나 recent app으로 넘어갈 때 썸네일 이미지를 가리고 싶다면

 

onPause에서 set 해주고 onResume에서 clear 해주면 된다

 

@Override
protected void onResume() {
    super.onResume();
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_SECURE);
}

@Override
protected void onPause() {
    super.onPause();
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
}
반응형

댓글