2010-11-02 24 views
3

Folks,AppEngine Service GWT-RPC au service pour le Web, ainsi que Android

I ont des services GWT-RPC (sur Appengine) supportant un client Web GWT. Tout est bien.

Maintenant, lorsque je développe un client Android pour cela, ai-je besoin d'une servlet dépouillée pour servir ce client? Signification, Maintenant, au lieu d'objets Java sérialisés envoyés (comme dans GWT), je vais devoir envoyer XML en utilisant HttpClient emballé d'Android à une nouvelle servlet (qui peut éventuellement réutiliser les services GWT-RPC dans AppEngine).

Suis-je sur la bonne voie ici? Android autorise-t-il directement les services backend GWT-RPC?

Je suis en train d'être succinct dans une perspective de code ..

Répondre

1

GWT-RPC est un opaque, protocole non standard, conçu pour être utilisé dans GWT applications seulement. AFAIK il n'y a aucun mécanisme pour communiquer dans GWT-RPC dans n'importe quel autre environnement (par exemple, Android) ou langue (par exemple, Python, PHP).

GWT-RPC n'est pas optimal en tant que mécanisme RPC multi-plateforme réutilisable pour cette raison.

Pour communiquer avec un client Android, je suggère Protocol Buffers, qui sont conçus pour être compact et multi-plateforme. Malheureusement, il n'y a actuellement aucun support pour l'envoi de PB aux clients GWT. Vous pouvez également utiliser des fichiers JSON standard, au format REST ou RPC, qui peuvent être consommés par les clients GWT ou Android, et sont relativement compacts, du moins par rapport au format XML.