Karthik Karthik - 4 months ago 29
Android Question

glide image loading timeout increase

I am using glide to load images from URL.
While I am fetching the images I am showing a loader in the image view.
Some of the images being fetched are larger and therefore in slow internet connection timeout occurs and throws exception

How can I increase the timeout?

Answer
    After searching a lot finally got an answer:

    public class CustomGlide implements GlideModule {
        @Override
        public void applyOptions(Context context, GlideBuilder builder) {
        }

        @Override
        public void registerComponents(Context context, Glide glide) {
            RequestQueue queue = new RequestQueue( // params hardcoded from Volley.newRequestQueue()
                    new DiskBasedCache(new File(context.getCacheDir(), "volley")),
                    new BasicNetwork(new HurlStack())) {
                @Override public <T> Request<T> add(Request<T> request) {
                    request.setRetryPolicy(new ***DefaultRetryPolicy(10000, 1, 1)***);
                    return super.add(request);
                }
            };
            queue.start();
            glide.register(GlideUrl.class, InputStream.class, new VolleyUrlLoader.Factory(queue));
        }
    }

** Change the DefaultRetryPolicy according to your need 

And in the manifest:
 <meta-data
            android:name="<package-name>.CustomGlide"
            android:value="GlideModule" />
Comments