安全性要求比较高的APP,一般会禁止在某些页面Activity进行截图,诸如农业银行的APP。加上下面的flag即可:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
在Activity的onCreate()方法给Window加上flag:WindowManager.LayoutParams.FLAG_SECURE
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//只需要加上下面这句就可以了
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
}
尝试截图的时候会提示“由于应用限制,该界面无法截图”,录屏的时候也会提示失败

参考博客:
《Android之禁止APP截图、录屏》
Android系统 截屏监听 的 原理与实现
Android拦截截屏事件 - 简书
Android中截屏监听实现 - 简书
精彩的人生需要浪漫、无畏和勇气。