检测Android 4.0+上的屏幕截图尝试

Bra*_*ery 7 security android screenshot

我正在开发一个Android应用程序,它高度重视保护用户的数据,以便在本地设备的永久内存中保存任何内容.

为了进一步保护用户数据,我们希望每当有人试图截取活动应用程序的屏幕截图时,都会向我们的服务器发出Web服务调用.

到目前为止,我看到的解决方案包括这个片段,旨在防止截屏被截取并在用户的Toast中抛出屏幕截图失败消息.我正在考虑的另一种方法是收听一些设备用来截取屏幕截图和电源按钮的组合(尽管三星S4等设备偏离此方法).我最后的办法是在应用程序运行时在屏幕截图库的位置使用FileObserver进行更改,但这似乎也是次优解决方案并引入了我不想拥有的权限请求.我也无法确定图像的文件目的地.

我相信Snapchat应用程序能够在远程用户尝试截取屏幕截图时提醒参与者.对于如何实现此功能,您有什么建议吗?也欢迎非官方方法.

Hug*_*ugo 0

FLAG_SECURE 可能是避免在窗口中截屏的最佳方法,但正如一些评论者所说,它有一些解决方法。

也许这个答案解决了他们如何在 Snapchat 中检测何时拍摄屏幕截图的问题。