Je veux construire un client REST sur un téléphone Android.
Le serveur REST expose plusieurs ressources, par exemple (GET)
http://foo.bar/customer List of all customer
http://foo.bar/customer/4711 The customer with id 4711
http://foo.bar/customer/vip List of all VIP customer
http://foo.bar/company List of all companys
http://foo.bar/company/4711 The company with the ID 4711
http://foo.bar/company/vip List of all VIP companys
Je (pense) savoir comment parler au serveur REST et obtenir les informations dont j'ai besoin. J'implémenterais une classe client REST avec une API comme celle-ci
public List<Customer> getCustomers();
public Customer getCustomer(final String id);
public List<Customer> getVipCustomer();
public List<Company> getCompanies();
public Customer getCompany(final String id);
public List<Customer> getVipCompanies();
Se réfère à la présentation " Développer des applications clientes Android REST "J'ai appris de Virgil Dobjanschi que ce n'est pas une bonne idée de traiter la requête REST dans un Worker Thread de l'activité. Au lieu de cela, je devrais utiliser la fonction Service API.
J'aime l'idée d'avoir un Singleton ServiceHelper qui se lie à un service (local) mais je crains de ne pas avoir bien compris le concept de service.
Pour l'instant, je ne comprends pas comment rapporter le résultat d'un appel REST (effectué de manière asynchrone dans un service) à l'activité appelante. Je me demande également si j'ai besoin d'UN SEUL service qui gère toutes les requêtes REST (avec différents types de retour) ou si j'ai besoin d'un service dédié pour chaque requête REST.
J'ai probablement beaucoup d'autres problèmes de compréhension, donc la meilleure chose à faire pour moi serait un application type qui répond à mes besoins. Mon cas d'utilisation n'est pas inhabituel et j'espère qu'il existe un exemple d'application.
Vous pouvez me le faire savoir !
Toute autre suggestion qui m'oriente vers une mise en œuvre correcte est également utile (la démonstration de l'API Android ne correspond pas à mon cas d'utilisation).
Merci d'avance.
Klaus
EDIT : Sujets similaires trouvés sur SO (après avoir posté ceci) qui m'ont conduit dans la direction dont j'ai besoin (minimiser le complexe "modèle Dobjanschi") :