如何阻止 android 应用截屏

How to block taking screenshot for android app

我正在开发一个 android 应用程序,我的要求是禁用整个应用程序的屏幕截图功能

MainActivity.java

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE,
                WindowManager.LayoutParams.FLAG_SECURE);
    }

我已经使用上面的代码来屏蔽屏幕截图,部分效果很好。由于我的代码包含 WebView 以在应用程序上显示 epub3(HTML + CSS + JS) 内容,因此它并没有专门限制该内容,它允许对该内容进行截图

请帮忙 提前谢谢你。

for this we are using different activity

然后您需要将 FLAG_SECURE 添加到 activity 的 window 以及您希望保护的任何其他 activity . FLAG_SECURE 在 per-window 基础上工作,每个 activity 都有自己的 window。

在 onCreate()

下面添加每个 activity
 this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);