Android:自定义最近的应用缩略图(默认为屏幕截图)
我正在处理的应用程序显示一些敏感信息,当按主屏幕按钮停止应用程序时,这些敏感信息不得显示在“最近任务”屏幕上。
我想模糊屏幕截图中的敏感数据或改为显示应用徽标。
我知道以下方法,但它们不符合我的要求:
- 在最可操作中将 actvitie 设置为 true 会阻止应用在最近的任务中显示。这将破坏用户体验。
android:excludeFromRecents
- 使用会导致在“最近任务”屏幕上显示空白卡片。(如何防止Android在我的应用程序进入后台时截取屏幕截图?我不喜欢空白屏幕。但是,如果没有解决方法,我将坚持使用此解决方案。
FLAG_SECURE
- 覆盖似乎是理想的解决方案,但不幸的是,它不起作用,因为它目前未作系统调用:((https://code.google.com/p/android/issues/detail?id=29370
onCreateThumbnail
)
然后我尝试了一些解决方法,但这并没有像希望的那样起作用:
- 启动一个新活动,在其中显示应用徽标,以便显示其屏幕截图,而不是实际活动的屏幕截图。但是,新活动需要很长时间才能打开,并且会破坏用户体验。
onPause
- 将活动的内容视图设置为 中的应用徽标的图像。这对我来说似乎是一个很好的解决方案。不幸的是,最近任务屏幕的屏幕截图是在未指定的时间拍摄的。在测试期间,按“主页”时,应用徽标会在应用关闭之前快速显示,但生成的屏幕截图会在此之前的短时间内显示活动。
onPause
- 从小部件中删除敏感数据(例如 )具有与刚才提到的屏幕截图计时相同的问题。
textView.setText("")
列出的解决方法是否有任何替代想法或解决方案?