43 votes

La meilleure option pour l'utilisation de la GData Api sur Android?

Ce qui est le moins douloureux et plus de taille moyen efficace d'utiliser la Google Api de Données dans une application Android?

Après quelques recherches rapides t semble qu'il y a un android-gdata projet sur Google Code qui semble être l'œuvre d'un seul auteur. Je n'ai pas trouvé de documentation pour elle et elle ne sait même pas si c'est encore prêt pour la production.

Une option plus ancienne, la com.google.sans fil.gdata colis semble avoir été supprimé à partir du SDK. Il est toujours disponible dans le dépôt GIT.

Avant de m'investir trop de temps avec les deux approches, je voudrais savoir laquelle est la mieux et la moins douloureuse.

33voto

Yaniv Inbar Points 1331

Veuillez prendre un coup d'oeil à l'API de Google Bibliothèque Client Java qui prend en charge Android:

http://code.google.com/p/google-api-java-client/

Il prend également en charge le nouveau GData technologies comme l'a récemment annoncé réponse partielle/mise à jour et JSON-C, à la fois de ce qui peut être une amélioration spectaculaire de l'efficacité sur Android.

Pour commencer, veuillez jeter un oeil à l' Android Developer Guide. Aussi, s'il vous plaît regardez la Android échantillon pour Picasa Web Albums de Données de l'API, ce qui démontre la capacité de créer/mettre à jour/supprimer un album photo et de télécharger une photo.

La divulgation complète: je suis un propriétaire de la google-api-java-client du projet.

5voto

James A Wilson Points 7274

J'ai aussi regardé le google-projet de code et le repo git. J'ai évité de le google code du projet en raison de l'apparente bagages qui sont venus dans des projets. J'ai fini par créer des implémentations personnalisées comme nécessaire d'adapter la norme API java. Vous pouvez trouver une description sommaire de ma solution dans l' android-groupe pour les développeurs. Il est de 4 à court, facile de tester les classes

3voto

user542954 Points 224

S'il vous plaît essayer de calcul Google API pour Android

http://code.google.com/p/google-spreadsheet-lib-android/

Je suis le maintien de ce projet sur Google Code, donc si vous rencontrez un problème, merci de me le faire savoir.

Cheers, Prasanta

2voto

Chris S Points 32376

Voici quelques étapes à suivre pour obtenir l'api Google Docs de travail avec Android projet Eclipse.

Spoiler: il casse (pour moi) sur le SAX exception

1

Obtenir la GData bibliothèque Java (via le guide de langue)

2

Obtenir les 3 pots à partir de l' Android Javamail port

3

Ajouter le jars suivants dans votre dossier lib, ajoutez le chemin d'accès en utilisant le menu contextuel (Build path->Ajouter)

  • activation.jar (javamail)
  • additionnal.jar (javamail)
  • mail.jar (javamail)
  • gdata-client-1.0.jar
  • gdata-client-meta-1.0.jar
  • gdata-core-1.0.jar
  • gdata-docs-3.0.jar
  • gdata-docs-meta-3.0.jar
  • gdata-gtt-2.0.jar
  • gdata-gtt-meta-2.0.jar
  • gdata-media-1.0.jar
  • google-collect-1.0-rc1.jar (à partir de la deps dossier de la gdata dossier)
  • jsr305.jar3. (à partir de la deps dossier de la gdata dossier)

4

N'oubliez pas d'ajouter le INTERNET autorisation de votre AndroidManifest.xml:

<uses-permission android:name="android.permission.INTERNET"></uses-permission>

5

Essayez quelques exemple de code:

DocsService client = new DocsService("myappname");
try
{
    client.setUserCredentials("username", "password");

    URL feedUri = new URL("https://docs.google.com/feeds/default/private/full/");
    DocumentListFeed feed = client.getFeed(feedUri, DocumentListFeed.class);

    TextView textView = (TextView) findViewById(R.id.textview);

    String text = ""; 
    for (DocumentListEntry entry : feed.getEntries())
    {
        text += entry.getTitle().getPlainText() + "\r\n";
    }

    textView.setText(text);
}
catch (AuthenticationException e)
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}
catch (MalformedURLException e)
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}
catch (IOException e)
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}
catch (ServiceException e)
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}

6

Accepter la défaite au bout de 2 heures, avec un SaxException de logcat:

ALERTER/parseur xml(1599): javax.xml.les parseurs.ParserConfigurationException:
org.xml.sax.SAXNotRecognizedException: http://xml.org/sax/features/external-parameter-entities
...
au com.google.gdata.wireformats.d'entrée.AtomDataParser.parse(AtomDataParser.java:68)

Cette dernière étape provoque une ServiceException.

1voto

Clive Jefferies Points 56

J'ai utilisé ceci: http://code.google.com/p/android-gdocs-api/. J'ai essayé de le convertir en un .jar, mais avait des problèmes. Je l'ai trouvé facile à marquer le projet comme un projet de bibliothèque et ensuite utilisé dans mon projet principal.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X