package de.luhmer.owncloudnewsreader; import android.app.Application; import android.content.SharedPreferences; import android.preference.PreferenceManager; import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import de.luhmer.owncloudnewsreader.reader.HttpJsonRequest; import de.luhmer.owncloudnewsreader.reader.OkHttpImageDownloader; public class NewsReaderApplication extends Application { @Override public void onCreate() { super.onCreate(); HttpJsonRequest.init(this); initImageLoader(); } public void initImageLoader() { SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); int diskCacheSize = Integer.parseInt(preferences.getString(SettingsActivity.SP_MAX_CACHE_SIZE,"500"))*1024*1024; if(ImageLoader.getInstance().isInited()) ImageLoader.getInstance().destroy(); DisplayImageOptions imageOptions = new DisplayImageOptions.Builder(). cacheOnDisk(true). cacheInMemory(true). build(); ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this). diskCacheSize(diskCacheSize). memoryCacheSize(10 * 1024 * 1024). diskCacheFileNameGenerator(new Md5FileNameGenerator()). defaultDisplayImageOptions(imageOptions). imageDownloader(new OkHttpImageDownloader(this, HttpJsonRequest.getInstance().getImageClient())). build(); ImageLoader.getInstance().init(config); } }