package com.laowch.githubtrends; import android.app.Application; import android.content.Context; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.laowch.githubtrends.utils.AnalyticsHelper; import com.laowch.githubtrends.utils.FavoReposHelper; import com.laowch.githubtrends.utils.LanguageHelper; import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import com.nostra13.universalimageloader.core.assist.QueueProcessingType; /** * Created by lao on 15/9/23. */ public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); AnalyticsHelper.initialize(this); LanguageHelper.init(this); FavoReposHelper.init(this); initImageLoader(this); } public void initImageLoader(Context context) { // This configuration tuning is custom. You can tune every option, you may tune some of them, // or you can create default configuration by // ImageLoaderConfiguration.createDefault(this); // method. ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context) .threadPriority(Thread.NORM_PRIORITY - 2) .denyCacheImageMultipleSizesInMemory() .memoryCacheSizePercentage(25) .diskCacheFileNameGenerator(new Md5FileNameGenerator()) .diskCacheSize(100 * 1024 * 1024) .tasksProcessingOrder(QueueProcessingType.LIFO) .writeDebugLogs() // Remove for release app .build(); // Initialize ImageLoader with configuration. ImageLoader.getInstance().init(config); } public static Gson getGson() { GsonBuilder builder = new GsonBuilder(); // config builder return builder.create(); } }