首页 > 解决方案 > 以编程方式防止android应用程序的远程屏幕录制

问题描述

我想防止使用 Anydesk、Quicksuppport、Teamviewer 等第三方应用程序对我的应用程序进行远程屏幕录制。

我已将以下标志用于活动:

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

但上述标志不适用于所有设备。

防止远程屏幕录制的任何其他解决方法?

标签: androidremote-access

解决方案


您提到的应用程序是在 或 的权限下运行CAPTURE_VIDEO_OUTPUTCAPTURE_SECURE_VIDEO_OUTPUT。不幸的是,如果他们拥有CAPTURE_SECURE_VIDEO_OUTPUT,那么FLAG_SECURE从他们的角度来看,在您的窗口上设置 没有任何影响。

可悲的是,我认为没有更好(或更有效)的方法来实现所需的行为。

如果您将您的应用设置为设备管理员,那么(在某些 api 级别上)您将能够禁用整个设备上的屏幕捕获,但是设置它很麻烦,而且这可能不是您想要做的第一名。


推荐阅读