Parece que no Chrome para Android, versão 65 , foi introduzido um "recurso" que não permite capturar uma captura de tela no modo de navegação anônima.
Ao tentar fazer uma captura de tela, o Android agora exibirá um alerta dizendo "Não é permitido fazer capturas de tela pelo aplicativo ou por sua organização".
/**
* Sets the attributes flags to secure if there is an incognito tab visible.
*/
@VisibleForTesting
void updateIncognitoState() {
WindowManager.LayoutParams attributes = mWindow.getAttributes();
boolean currentSecureState = (attributes.flags & WindowManager.LayoutParams.FLAG_SECURE)
== WindowManager.LayoutParams.FLAG_SECURE;
boolean expectedSecureState = isShowingIncognito();
if (currentSecureState == expectedSecureState) return;
if (expectedSecureState) {
mWindow.addFlags(WindowManager.LayoutParams.FLAG_SECURE);
} else {
mWindow.clearFlags(WindowManager.LayoutParams.FLAG_SECURE);
}
}
Isso está impondo regras que você pode esperar ter em um ambiente corporativo em um telefone pessoal.
A interface do usuário do sistema operacional deve deixar claro quando e como outros aplicativos estão gravando a tela. Como desenvolvedor de aplicativos, não devo me preocupar em evitar capturas de tela. A quebra dessa funcionalidade quebra o menor denominador comum de compartilhamento de dados: captura de tela. Um dos motivos para fazer uma captura de tela é apenas porque um aplicativo perde uma funcionalidade adequada de exportação de dados.
Fonte: HN Discussion
Existe alguma maneira de desativar ou impedir esse comportamento?