2013-07-29 3 views
6

Ils disent partout que nous devrions utiliser ASyncTaskLoaders parce qu'ils sont très bons pour ne pas bloquer le thread de l'interface utilisateur. Et il y a Volley à utiliser maintenant. Je suppose que nous ne pouvons pas les utiliser tous les deux parce que Volley fait de l'arrière-plan tout seul. Qu'est-ce que tu penses? Quel est le meilleur?Volley ou ASyncTaskLoader

+0

[vérifier ce] (http://androidcustomviews.com/portfolio/volley-easy-fast-networking-for-android/) ont tous deux des avantages différents vous devez trouver le vôtre. –

+0

Le lien compare Volley avec ASyncTask. Volley est bien meilleur qu'AsyncTask. C'est connu. Mais qu'en est-il de l'interface Loader? Nous ne pouvons pas utiliser l'interface Loader si nous utilisons Volley, pouvons-nous? – tasomaniac

+0

dans l'url supérieur vérifier tutoriel kpbird ils ont montrer la boîte de dialogue de progression. –

Répondre

2

J'utilise Volley depuis maintenant un mois et je dois dire que je suis très satisfait. Cela aide vraiment à ne pas avoir à s'inquiéter de l'insertion de détails d'implémentation. Jusqu'à présent, le réseautage général et le téléchargement d'images à distance fonctionnent très bien.

Ce n'est pas qu'il n'y a pas de problèmes, mais jusqu'à présent, ils ont été minimes.

1

Vous feriez mieux de demander que cette reprise de volée vs Async vs RxJava

Vous pouvez utiliser ce RXJava pour le fil de fond, mais pour une meilleure efficacité pour appeler des services reposant Volley est fortement recommandé, très moins de codage nécessaire comparer aux chargeurs de travail async !

+0

Moins aspect codage de Volley est très attrayant. Je vous remercie. – tasomaniac

+0

Mais Volley n'a pas de modèle acteur/abonné que RXJava a. Droite? –

+1

@IgorGanapolsky Il n'y a pas encore d'implémentation de Rx Volley disponible je suppose !! Cependant, vous pouvez essayer l'implémentation Rx avec Retrofit !! https://github.com/vyshane/rex-weather –

3

Ces 2 technologies sont différentes et difficilement comparables. Ils ont des objectifs différents et peuvent aussi travailler ensemble. Vous pouvez par exemple implémenter un Loader qui utilise Volley pour charger les données et hérite directement de Loader (pas de AsyncTaskLoader, car Volley gère aussi le thread).

Les principaux avantages de l'utilisation de chargeurs:

  • du cycle de vie est synchronisé avec l'activité/cycle de vie Fragment automatiquement
  • données et de l'état de chargement ne sont pas perdus sur le changement de configuration
  • Le chargeur surveille les changements et expulse les nouveaux résultats automatiquement au fragment/à l'activité du client.

Principaux avantages de l'utilisation Volley:

  • pile réseau haute performance
  • cache disque automatique qui respecte la stratégie du serveur HTTP
  • puissant mécanisme d'annulation.

Vous pouvez combiner les deux pour obtenir les deux ensembles d'avantages ou vous pouvez utiliser Volley sans chargeurs avec son API simple.