Предотвращать захват экрана в приложениях Android

Мне было интересно, есть ли способ обнаружить через какой-либо метод call-back «onXXXXX» или получить широковещательную передачу, если какой-нибудь другой процесс вот-вот отобразит экран моего приложения. Например, если инструменты SDK или какое-либо другое приложение для захвата экрана выполняет «Захват экрана», я хотел бы получить уведомление, а затем решить, следует ли разрешить или запретить захват экрана.

Если это невозможно, есть ли способ заблокировать дисплей, чтобы никакой другой процесс не мог отображать мой экран?

Solutions Collecting From Web of "Предотвращать захват экрана в приложениях Android"

Нет поддерживаемого метода, чтобы сделать снимок экрана другого приложения на Android. Единственные способы включают в себя либо укоренение, либо использование SDK, которые обе дают вам мало шансов, что вы либо заблокируете, либо получите уведомление об этом. Если другое приложение занимает ваш скриншот, оно по умолчанию использует не поддерживаемые методы и, вероятно, может делать то, что ему нравится.

Я хотел бы уточнить, что я не подразумеваю, что вы не должны использовать какие-либо методы для обеспечения безопасности своего приложения. Я просто даю вам знать, что, возможно, это невозможно сделать без использования не поддерживаемых методов, и даже если вы их используете, вы не можете быть на 100% защищены от скриншотов.

Это сработало для меня на Samsung Tab 2 7 "

http://commonsware.com/blog/2012/01/16/secure-against-screenshots.html

С оговоркой, что вам может потребоваться изменить

LayoutParams

в

WindowManager.LayoutParams