안드로이드 관련 포스팅 목록
2020/06/21 - [Android] - [Android] 안드로이드 자동 화면 회전 방지(Auto Screen Rotation Restriction)
화면 캡처 방지
안녕하세요. 오늘은 안드로이드 핸드폰에서 화면 캡처 버튼을 클릭하였을 때 캡처가 되지 않도록 방지하는 방법에 대하여 알아보겠습니다.
일반적으로 핸드폰의 볼륨 하 버튼과 화면 버튼을 동시에 클릭하면 현재 앱의 화면을 캡처하여 갤러리에 저장해줍니다. 하지만 우리가 개발하는 앱들에서 민감하거나 외부로 노출되면 안되는 화면이라던지 개인 정보가 존재한다면 이러한 캡처를 할 수 없도록 해야합니다.
이런 경우를 위해서 안드로이드에서는 화면 캡처 방지를 위한 API를 제공하고 있습니다.
자 그러면 바로 테스트 코드를 시험해보도록 하겠습니다.
안드로이드 개발 환경
Windows 10 x64
JDK 1.8.0_221
Android Studio 3.5
테스트 가상 에뮬레이터 Pixel 2 API 28
화면 캡처 방지 테스트 앱 소스코드
우선 테스트 프로젝트를 생성합니다.
이후 onCreate() 메소드에 아래 한 줄을 추가합니다.
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
}
이제 가상 에뮬레이터를 실행합니다. 이 포스팅에서는 가상 에뮬레이터를 사용하지만 실제 핸드폰을 이용하여 테스트를 진행해도 상관없습니다. 가상 머신의 스크린샷 버튼을 클릭하여 화면 캡처가 방지되는지 확인합니다. 결과적으로 위와 같이 화면 캡처가 잘 방지되는 것을 확인하였습니다.
마무리
다음 포스팅에서는 앱의 자동 화면 전 기능을 방지하는 방법에 대하여 알아보겠습니다.
반응형