如何防止 Android 中的屏幕捕获

新手上路,请多包涵

是否可以防止Android应用程序中的屏幕录制?

我想开发一个 Android 安全应用程序。在那我需要检测正在后台运行的屏幕录制软件并杀死它们。我使用 SECURE FLAG 来防止屏幕截图。但我不知道是否也可以防止 Android 屏幕的视频捕获。让我知道如何防止屏幕捕获(视频/屏幕截图)。

原文由 Anand 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 511
2 个回答

我要说的是, 不可能 通过支持的方式完全阻止任何 android 应用程序的屏幕/视频捕获。但是,如果您只想为 普通 的 android 设备阻止它,则 SECURE FLAG 是可观的。

1) 安全标志确实会阻止正常的屏幕截图和视频捕获。

此链接 上的文档还说

窗口标志:将窗口内容视为安全, 防止其出现在屏幕截图中或在非安全显示器上查看。

上述解决方案肯定会阻止应用程序捕获您的应用程序的视频

这里 查看答案。

2) 有捕获屏幕内容的替代方法。

有可能在有根设备上或通过使用 SDK 捕获另一个应用程序的屏幕,

这两者都几乎没有机会阻止它或接收它的通知。

例如:存在通过 SDK 将您的手机屏幕镜像到您的计算机的软件,因此可以在那里使用屏幕捕获软件,您的应用程序无法发现。

这里 查看答案。

 getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);

原文由 RobCob 发布,翻译遵循 CC BY-SA 4.0 许可协议

关于阻止在应用程序中截屏的可能性:

 Window window = requireActivity().getWindow();
window.addFlag(WindowManager.LayoutParams.FLAG_SECURE);

记得清理这个标志(fe in onDestroy)——在应用程序的其他安全位置启用屏幕截图:

 window.clearFlags(WWindowManager.LayoutParams.FLAG_SECURE);

原文由 Ozzini 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题