我在我的應用程序中使用下面的配置。我們有很多列表屏幕,我們使用智能適配器通過UIL加載圖像。我使用下面的代碼進行UIL配置。我們在崩潰日誌中收到很多OutOfMemoryError。請讓我知道什麼是錯的配置UIL OutOfMemory
private static final int MB = 1024 * 1024;
private static final int MEMORY_CACHE_SIZE = (int) 1.5 * MB;
private static final int DISK_CACHE_SIZE = 15 * MB;
private com.nostra13.universalimageloader.core.ImageLoader imageLoader;
public UniversalImageLoader(Context context)
{
DisplayImageOptions defaultOptions = new DisplayImageOptions.Builder().cacheInMemory(true).cacheOnDisk(true).build();
File cacheDir = StorageUtils.getCacheDirectory(context);
ImageLoaderConfiguration.Builder configBuilder = new ImageLoaderConfiguration.Builder(context);
configBuilder.threadPriority(1);
if(BuildConfig.DEBUG)
{
configBuilder.writeDebugLogs();
}
configBuilder.denyCacheImageMultipleSizesInMemory();
configBuilder.defaultDisplayImageOptions(defaultOptions);
configBuilder.memoryCache(new LruMemoryCache(MEMORY_CACHE_SIZE));
try
{
configBuilder.diskCache(new LruDiskCache(cacheDir, new HashCodeFileNameGenerator(), DISK_CACHE_SIZE));
}
catch(IOException e)
{
configBuilder.diskCacheSize(DISK_CACHE_SIZE);
}
imageLoader = com.nostra13.universalimageloader.core.ImageLoader.getInstance();
imageLoader.init(configBuilder.build());
imageLoader.handleSlowNetwork(true);
}
請[編輯],以顯示在異常發生 –