android - 以编程方式防止android应用程序的远程屏幕录制
问题描述
我想防止使用 Anydesk、Quicksuppport、Teamviewer 等第三方应用程序对我的应用程序进行远程屏幕录制。
我已将以下标志用于活动:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
但上述标志不适用于所有设备。
防止远程屏幕录制的任何其他解决方法?
解决方案
您提到的应用程序是在 或 的权限下运行CAPTURE_VIDEO_OUTPUT
的CAPTURE_SECURE_VIDEO_OUTPUT
。不幸的是,如果他们拥有CAPTURE_SECURE_VIDEO_OUTPUT
,那么FLAG_SECURE
从他们的角度来看,在您的窗口上设置 没有任何影响。
可悲的是,我认为没有更好(或更有效)的方法来实现所需的行为。
如果您将您的应用设置为设备管理员,那么(在某些 api 级别上)您将能够禁用整个设备上的屏幕捕获,但是设置它很麻烦,而且这可能不是您想要做的第一名。