防止在android中截取屏幕截图

问题描述 投票:0回答:2

我使用下面的链接来防止截屏,但这将花费更多的时间来防止在执行代码后截取屏幕截图,这将阻止截屏。

How do I prevent Android taking a screenshot when my app goes to the background?

码:

if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
}

电话:galaxy s6 Os:5.1.1

android screenshot android-screen-support
2个回答
0
投票

此代码旨在将Activity(或更确切地说,窗口)标记为“安全”而不是电话。它只会阻止已设置此标志的Activity截取屏幕截图。

要保护Activity,请在OnCreate中调用此代码。当没有显示Activity时,这不会停止截图。

例:

@Override
protected void onCreate(Bundle b) {
    super.onCreate(b);

        getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);

}

我自己没有尝试过,所以不知道是否可能,但你可以在当前具有SECURE标志设置的Activity上绘制一个不可见的窗口。也许这会阻止整个手机的截图,我认为这就是你所要求的。


0
投票

只需添加以下行:

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

在你的setContentView()方法之前。

© www.soinside.com 2019 - 2024. All rights reserved.