安卓进阶Android应用开发那些事Android开发之路

Android之防截屏

2019-07-17  本文已影响74人  NoBugException

Android防截屏是防止泄密的措施之一,防截屏的措施有两种,一种是禁止截屏,另一种是监听用户是否截屏,这样就知道谁截屏泄密了

[怎样禁止截屏]

代码实现比较简单,就一句话:

    //禁止屏幕截屏
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);

当您截屏的时候,有些手机给一个隐私相关的提示(Toast),有些会收到一个禁止截屏的通知(Notification)。

[截屏监听]

首先说明一下,监听截屏的动作不是禁止截屏,而是允许截屏,只有在允许截屏情况下才能监听截屏。我们都知道,截屏之后是一张图片,这张图片会存储到手机的媒体数据库(Media库),它的原理是:通过监听媒体数据库的变化,并获取媒体数据库中的最后一张图片,一般截图之后的图片保存路径是:外部存储器/Pictures/Screenshots/Screenshot_20161001-164643.png

以下博客不是本人出品,不过写的特别好,大家可以看一下,代码也是有的:Android系统 截屏监听的原理与实现

这里说明一下,你必须知道手机的媒体数据库概念,因为真的是Android基础的一部分,不要以为这个不重要就不去了解了,系统相机拍照也自动保存到媒体数据库,系统邮件也保存在媒体数据库,系统录音之后的媒体文件也保存在媒体数据库,您说重不重要呢?

[本章完...]

上一篇下一篇

猜你喜欢

热点阅读