@Sassegra : Tout d'abord, oui, il faut absolument faire tes appels en asynchrone. Sinon, tu bloques le thread principal pendant un temps indéterminé, et l'application ne répond plus. Et quand une application ne répond plus, Android a tendance à proposer automatiquement à l'utilisateur de la fermer. C'est pas bon du tout
Pour faire les appels asynchrones, je te déconseille fortement l'utilisation des AsyncTask (l'ancienne manière de faire), parce que ça a tendance à créer des bugs (si l'utilisateur change l'orientation de son appareil, par exemple). Il faut donc choisir une lib qui gère l'asynchronité (non, je ne sais pas quel mot utiliser, mais on va faire semblant que "asynchronité" existe) toute seule.
Volley le fait. Apache, je ne l'ai jamais utilisé en android, et j'ai pas l'impression qu'ils gèrent bien le truc.
Mais mon préféré est
Retrofit. De plus, si ton appel te renvoie du JSON ou du XML (les deux principaux standards), la lecture et la transformation en objet est automatique, et ça ne te prend que quelques lignes de code
Ensuite, pour choisir entre Volley et Retrofit, c'est vraiment au coup de cœur, tu as énormément d'articles de blogs pour décider lequel est meilleur et ils tombent rarement d'accord.