add disk cache for images
This commit is contained in:
parent
6d6c9575c4
commit
6120072730
1 changed files with 12 additions and 6 deletions
|
@ -39,6 +39,8 @@ import javax.inject.Inject;
|
||||||
import dagger.android.AndroidInjector;
|
import dagger.android.AndroidInjector;
|
||||||
import dagger.android.DispatchingAndroidInjector;
|
import dagger.android.DispatchingAndroidInjector;
|
||||||
import dagger.android.HasActivityInjector;
|
import dagger.android.HasActivityInjector;
|
||||||
|
import okhttp3.Cache;
|
||||||
|
import okhttp3.OkHttpClient;
|
||||||
|
|
||||||
public class TuskyApplication extends Application implements HasActivityInjector {
|
public class TuskyApplication extends Application implements HasActivityInjector {
|
||||||
public static final String APP_THEME_DEFAULT = ThemeUtils.THEME_NIGHT;
|
public static final String APP_THEME_DEFAULT = ThemeUtils.THEME_NIGHT;
|
||||||
|
@ -102,15 +104,19 @@ public class TuskyApplication extends Application implements HasActivityInjector
|
||||||
// Initialize Picasso configuration
|
// Initialize Picasso configuration
|
||||||
Picasso.Builder builder = new Picasso.Builder(this);
|
Picasso.Builder builder = new Picasso.Builder(this);
|
||||||
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
|
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
|
||||||
builder.downloader(new OkHttp3Downloader(OkHttpUtils.getCompatibleClient(preferences)));
|
|
||||||
|
OkHttpClient.Builder okHttpBuilder = OkHttpUtils.getCompatibleClientBuilder(preferences);
|
||||||
|
|
||||||
|
int cacheSize = 10*1024*1024; // 10 MiB
|
||||||
|
|
||||||
|
okHttpBuilder.cache(new Cache(getCacheDir(), cacheSize));
|
||||||
|
|
||||||
|
builder.downloader(new OkHttp3Downloader(okHttpBuilder.build()));
|
||||||
if (BuildConfig.DEBUG) {
|
if (BuildConfig.DEBUG) {
|
||||||
builder.listener((picasso, uri, exception) -> exception.printStackTrace());
|
builder.listener((picasso, uri, exception) -> exception.printStackTrace());
|
||||||
}
|
}
|
||||||
try {
|
|
||||||
Picasso.setSingletonInstance(builder.build());
|
Picasso.setSingletonInstance(builder.build());
|
||||||
} catch (IllegalStateException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public ServiceLocator getServiceLocator() {
|
public ServiceLocator getServiceLocator() {
|
||||||
|
|
Loading…
Reference in a new issue