Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓:使用安全标志时更改窗口背景颜色_Android - Fatal编程技术网

Android 安卓:使用安全标志时更改窗口背景颜色

Android 安卓:使用安全标志时更改窗口背景颜色,android,Android,我有一个请求,当我的Android应用程序放在后台时,我会清空屏幕以隐藏敏感数据。这很容易使用以下工具实现: getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); 困难的部分似乎是改变你在后台查看应用程序时看到的空白屏幕的颜色。默认情况下,它看起来是白色的,我似乎找不到一种方法来覆盖它。有人有什么想法吗?很遗憾,您无法在“最近”视图中自定义缩略图的颜色 正如您在缩略图的默认颜色(0xffffffff)中所看到的,缩略图是硬编

我有一个请求,当我的Android应用程序放在后台时,我会清空屏幕以隐藏敏感数据。这很容易使用以下工具实现:

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

困难的部分似乎是改变你在后台查看应用程序时看到的空白屏幕的颜色。默认情况下,它看起来是白色的,我似乎找不到一种方法来覆盖它。有人有什么想法吗?

很遗憾,您无法在“最近”视图中自定义缩略图的颜色

正如您在缩略图的默认颜色(
0xffffffff
)中所看到的,缩略图是硬编码的,因此不可自定义:

/** Updates the paint to draw the thumbnail. */
void updateThumbnailPaintFilter() {
    if (mInvisible) {
        return;
    }
    int mul = (int) ((1.0f - mDimAlpha) * mThumbnailAlpha * 255);
    int add = (int) ((1.0f - mDimAlpha) * (1 - mThumbnailAlpha) * 255);
    if (mBitmapShader != null) {
        mLightingColorFilter.setColorMultiply(Color.argb(255, mul, mul, mul));
        mLightingColorFilter.setColorAdd(Color.argb(0, add, add, add));
        mDrawPaint.setColorFilter(mLightingColorFilter);
        mDrawPaint.setColor(0xffffffff);
    } else {
        int grey = mul + add;
        mDrawPaint.setColorFilter(null);
        mDrawPaint.setColor(Color.argb(255, grey, grey, grey));
    }
    invalidate();
}

使用
FLAG\u SECURE
时,我可以通过
styles.xml
文件中的AppTheme将窗口背景颜色更改为“黑色”,方法是更改主题,如下所示:

<style name="AppTheme" parent="Theme.AppCompat"> 
****
</style>

****

它可以定制为任何颜色,但我需要黑色,因此如果您需要定制颜色,请进行进一步调查。

这是目前唯一的解决方案吗?