我正在开发一个有私人信息的应用程序,不应该在Android最近的应用程序切换器中显示真正的屏幕截图。我尝试了this solution的一个变体,在onPause函数中将内容视图设置为ImageView,但似乎在内容视图更改为自定义图像之前,操作系统会截取屏幕截图。
我也注意到了setting the window's layout parameter flags to secure,使截图完全是白色的,但我希望有一种方法可以自定义截图。
所以,我想知道安卓在什么时候为应用程序切换器(特别是KitKat和棒棒糖)拍摄应用程序的截图。
发布于 2015-06-23 19:41:04
编辑
在最近的应用程序中,不再可以自定义系统用来显示缩略图的屏幕截图。
旧答案
看一看Activity.onCreateThumbnail
方法--这正是你想要的,因为它允许你为最近的屏幕绘制自己的缩略图。
您可以将Canvas
作为参数之一,您可以在其中直接绘制(或根本不绘制)。要点是你必须从这个方法返回true
,这表明系统不会自己绘制缩略图。
最简单的解决方案是:
@Override
public boolean onCreateThumbnail (Bitmap outBitmap, Canvas canvas) {
// Do nothing or draw on Canvas
return true;
}
或者,如果您想绘制自己的Bitmap
@Override
public boolean onCreateThumbnail (Bitmap outBitmap, Canvas canvas) {
Bitmap myBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.myBitmap);
canvas.drawBitmap(myBitmap, 0, 0, null);
return true;
}
https://stackoverflow.com/questions/31011593
复制