Разрешить скриншоты, используя FLAG_SECURE - PullRequest
0 голосов
/ 05 сентября 2018

С FLAG_SECURE снимок экрана не разрешен. Я бы хотел, чтобы мое приложение могло захватывать экран, но чтобы оно было размыто или скрыто, когда оно переходит на задний план.

Ты бы знал, как это сделать? Можно ли это сделать с помощью FLAG_SECURE?

Я читал эту тему ( Android: невозможно сделать снимок экрана после использования метода FLAG_SECURE ), но никто не может ответить на этот вопрос.

Использование FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS исключает приложение, которое появляется в последних приложениях, но не уверено, мешает ли системе Android захватить и сохранить скриншот состояния.

Любое предложение Спасибо

1 Ответ

0 голосов
/ 05 июня 2019

Это действительно возможно.

public override fun onPause() {
    window.addFlags(WindowManager.LayoutParams.FLAG_SECURE)
    super.onPause()
}

public override fun onResume() {
    super.onResume()
    window.clearFlags(WindowManager.LayoutParams.FLAG_SECURE)
}

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

...