2017-07-05 2 views
1

Dans mon application android j'utilise glide pour le chargement de l'image et OkHttp pour les opérations réseau.OkHttp - détecter le délai de téléchargement de l'image

Je voudrais montrer l'image d'erreur en utilisant le glissement si le téléchargement de l'image prend plus de temps que le délai (par exemple 10s). J'ai utilisé GlideModule pour connecter OkHttpClient avec glide mais il semble que la méthode readTimeout de OkHttpClient ne fonctionne pas comme je le pensais - elle n'attend pas la fin du téléchargement de l'image mais attend seulement la lecture des octets. Donc, ma question est: Comment puis-je annuler la demande okhttp si l'opération de téléchargement de l'image prend plus de temps que prévu? J'ai essayé de le faire dans Interceptor mais sans succès pour le moment.

Répondre

2

Ceci n'est pas implémenté dans OkHttp. Nous suivons whole operation timeouts here.

Si vous êtes impatient, vous pouvez utiliser un ScheduledExecutorService ou similaire pour annuler l'appel après une durée spécifiée.