Android禁止截图

Posted Time-Traveler

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android禁止截图相关的知识,希望对你有一定的参考价值。

禁止截图的实现
本文转自,尊重原创:https://blog.csdn.net/xmj10086/article/details/73739630
APP的某些界面如果不希望用户能够截屏,可以对当前当前的Activity设置一个安全标记

实际上,android 本身就提供了对应的 Api 的,使用起来也非常的简单,只需要拿到 window 对象,对其添加一个 FLAG_SECURE 的 flag 即可。

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

这里的 window 对象,可以是 Activity.getWindow() 获取的,也可以是 Dialog.getWindow() 获取的,获取 window 的方式很多,这里就不一一举例了。只是使用不同对象获取到的 Window 对象,禁用截屏的区域也不同。大部分情况下都推荐使用这种方法,禁用掉系统截屏的功能,一劳永逸。

FLAG_SECURE 是 WindowManager.LayoutParams 的一个属性,从文档上就可以看出来,它标记当前 window 是安全的,不允许有一些非安全的操作,例如截屏功能。

在Google的过程中, 发现这个flag可以实现以下功能:
1.阻止屏幕截图
2.在Recent apps(任务切换界面)中只显示应用名字和图标, 不显示内容
3.Google App的Now on tap功能不会去分析你的页面的内容

以上是关于Android禁止截图的主要内容,如果未能解决你的问题,请参考以下文章

安卓手机 被禁止截屏 怎么截屏

android中怎么用代码实现截屏

win10系统怎样禁止亲淘截图会放大

Android测试Android截图的深水区

Android 截屏监听(截图分享功能)

5.2Android Studio截图