trying_to_draw_too_large_ bitmap
問題描述
加載一個大背景圖片時,報錯 trying to draw too large(138078000bytes) bitmap
最終解決方案
Glide.with(getApplicContext())
.load(R.drawable.cge_gamehall_bg)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(new SimpleTarget<GlideDrawable>()
{
@Override
public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation)
{
gamehallBinding.gameHallBg.setImageDrawable(resource);
}
});
其他說法(未驗證)
這里就不翻譯了,意思就是說你將高分辨率圖片放在了低分辨率文件夾下。
例如:圖片的分辨率是屬于xxhdpi的,而你將這張圖片放在了drawable-xhdpi或者比這個還低的文件夾下,就會報這個錯,解決的辦法:
1.人為的將這張圖片的分辨率降低(一般不這樣做)
2.將高分辨率的圖片放在drawable-xxhdpi或者drawable-xxxhdpi下即可
當然,之所以會出現(xiàn)這些問題都是UI切圖不注意大小或者工程師放置圖片位置不規(guī)范導致的,如果嚴格的按照andorid開發(fā)規(guī)范的要求來做的話,是根本不會出現(xiàn)這種問題的。
采用第二種方式的話,在調(diào)試安裝apk的時候是沒有問題的,但是在打包安裝的時候會報軟件包安裝程序已停止的錯誤,原因是drawable-xhdpi文件夾下沒有圖片,將圖片分辨率降低放入drawable-xhdpi文件夾下再次打包安裝就沒有問題了。