J'ai implémenté avec succès Volley pour le traitement de requêtes réseau. Cependant, quand mon application démarre, elle s'éteint et obtient un fichier de configuration dont elle a besoin. Je me demande si Volley est le bon choix pour obtenir ces données de configuration initiale très tôt? Est-ce que cela prend un certain temps pour instancier les filets de volée pour la file d'attente, le cache etc., et donc peut-être que pour cette requête initiale, c'est le mauvais choix? Je voulais obtenir des commentaires à ce sujet. D'une part, c'est un bon choix à cause de ses paramètres RetryPolicy qui vont essayer plusieurs fois de remplir la requête, d'autre part cela peut-il prendre du temps pour configurer la file d'attente des demandes de volée et lancer les discussions? Suis-je préférable d'émettre cette demande initiale en utilisant juste un AsyncTask?L'API Volley est-elle adaptée pour obtenir les données de configuration initiale d'une application?
L'API Volley est-elle adaptée pour obtenir les données de configuration initiale d'une application?
Répondre
Utilisez Volley si vous trouvez ses fonctionnalités utiles ou si vous souhaitez conserver une cohérence avec la façon dont vous effectuez les demandes réseau dans le reste de votre application.
Le temps nécessaire à l'installation de votre Volley n'est pas important. Le temps d'aller-retour nécessaire pour récupérer votre fichier de configuration sera dans les 100s de ms. Alors que la mise en place de Volley nécessitera au plus 10s de ms.
Comme il est une demande first
, je preffer utiliser AsyncTask
, Volley est vraiment très bon, mais c'est un processus important au très beggining de l'application, peut-être à ce moment-là Volley n'est pas ready
encore ou prendra some additional meaningful time
pour faire la demande, donc AsyncTask
c'est mieux pour ce cas particulier, plus vous aurez tout le contrôle total sur la façon dont cette demande first
serait faite. EDIT: J'ai juste vu Ficus Kirkpatrick (l'esprit maître de la librairie Volley), et il m'a dit que vous pouviez créer un RequestQueue
à la demande ou le créer au début et le garder comme un singleton pour le reste du code, donc entendant ça, vous devriez essayer avec AsyncTask et Volley et vérifier quels sont les résultats en termes de performance, je pense toujours qu'un AsyncTask plus simple fera le travail mieux qu'utilisant instanlly Volley, il a également dit que bien sûr Volley n'est pas un must, donc je suppose C'est l'un des cas où ce n'est pas un must.
bien si je peux confirmer que cela prend beaucoup de temps à installer, un des avantages de Volley pour obtenir la configuration initiale est sa politique de réessayer. S'il est vraiment important d'obtenir la configuration plutôt que la nouvelle tentative, il est préférable d'obtenir la configuration, mais vous ne savez pas s'il y a des risques à attendre que la volée s'initialise au début. – TestBest
Si vous souhaitez utiliser une infrastructure AsyncTask
, mais comme la facilité de créer une demande Volley
, envisagez d'utiliser droidQuery, qui suit le même schéma que la demande Javascript
. Par exemple, pour obtenir JSON
de example.com
, vous pouvez utiliser la méthode abrégée:
$.getJSON("http://www.example.com", null, new Function() {
@Override
public void invoke($ droidQuery, Object... params) {
JSONObject json = (JSONObject) params[0];
//TODO handle json
}
});
ou la méthode longhand:
$.ajax(new AjaxOptions().url("http://www.example.com")
.type("GET")
.dataType("json")
.success(new Function() {
@Override
public void invoke($ droidQuery, Object... params) {
JSONObject json = (JSONObject) params[0];
//TODO handle json
}
})
.error(new Function() {
@Override
public void invoke($ droidQuery, Object... params) {
AjaxError e = (AjaxError) params[0];
Log.e("$", "Error " + e.status + ": " + e.error);
}
}));
- 1. Configuration initiale pour l'application Android
- 2. Configuration initiale pour couvrir toutes les options
- 3. Configuration initiale d'openLDAP
- 4. Fuseki 2 configuration initiale
- 5. NSUserDefaults configuration initiale
- 6. CodeIgniter configuration initiale 404
- 7. Configuration initiale d'un projet Spring
- 8. Android Volley onResponse obtenir des données
- 9. Configuration de l'application initiale du magasin Erlang
- 10. Configuration initiale Drupal sur Linux?
- 11. configuration initiale, redémarrage apache échouant
- 12. GoodData Visualization SDK Configuration initiale
- 13. Problème d'analyse JSON pour les contacts Android Application utilisant Volley
- 14. Comment faire une configuration initiale de la configuration des données avec CoreData?
- 15. Configuration pour obtenir les images de l'apache
- 16. Logstash Configuration jdbc-input-plugin pour la valeur initiale sql_last_value
- 17. configuration initiale de la tour de Hanoi?
- 18. Pour Selenium WebDriver - Maven et la configuration initiale de pom.xml
- 19. Base de données NoSQL la mieux adaptée pour Content Recommender
- 20. Configuration initiale du contrôleur Ruby on Rails
- 21. Obtenir attribut de données correct pour la valeur à l'aide jquery adaptée
- 22. Xcode 4 - Cible de ligne de commande avec configuration initiale
- 23. Obtenir Robolectric pour travailler avec Volley
- 24. Android Volley Afficher les données JSON
- 25. Configuration initiale pour l'envoi de journaux d'une base de données volumineuse dans SQL Server 2008
- 26. Obtenir JSON avec Volley
- 27. stockage Configuration pour une application de bureau
- 28. Est-il possible d'appliquer la configuration initiale d'une application de page?
- 29. Store Volley Demande de données
- 30. initiale création SessionFactory échoué: org.hibernate.MappingException: configuration incorrecte
Volley encore très nouveau, je tête AsyncTask d'abord pour vous. – JosephChilberry
@TestBest vous avez demandé 9 des 11 dernières questions avec le tag Volley mais n'a presque pas accepté de réponse. Les membres de la communauté essaient de s'entraider, donc si quelqu'un vous a aidé à résoudre votre problème, il est habituel d'accepter leur réponse ou au moins de commenter et de dire ce qui n'allait pas. Il aide également les autres qui ont la même question ou une question similaire. –