2015-10-21 265 views
2

我有一個請求,當我的Android應用程序被置於後臺時,我將屏幕空白以隱藏敏感數據。這是很容易使用來實現:Android:使用FLAG_SECURE改變窗口背景的顏色

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

困難的部分似乎正在改變的是黑屏看在後臺的應用程序時,你得到的顏色。默認情況下,它似乎是白色的,我似乎無法找到一種方法來覆蓋它。有人有主意嗎?

回答

5

不幸的是,您無法自定義最近視圖中縮略圖的顏色。

正如你可以看到TaskViewThumbnail縮略圖的默認顏色(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(); 
}