小编典典

如何防止 Android 中的屏幕捕获

all

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

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


阅读 235

收藏
2022-09-02

共1个答案

小编典典

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

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

此链接上的文档还说

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

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

在这里查看答案。

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

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

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

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

在这里查看答案:

不支持在 Android 上截取另一个应用程序的屏幕截图的方法。唯一的方法涉及生根或使用 SDK,这两者都几乎没有机会阻止或接收它的通知。如果另一个应用程序截取了您的屏幕截图,则默认情况下它使用不受支持的方法,并且可能随心所欲。

我想澄清一下,我并不是暗示您不应该使用任何可用的方法来保护您的应用程序。我只是让您知道,如果不使用不受支持的方法,可能无法做到这一点,而且即使您确实使用它们,您也可能无法 100% 安全地防止屏幕截图。

getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);
2022-09-02