43

AndroidアプリケーションでGoogleDataAPIを使用するための最も苦痛が少なく、サイズ効率の高い方法は何ですか?

数回のクイック検索の後、 GoogleCodeにandroid-gdataプロジェクトがあります。これは1人の作成者の作品のようです。私はそれに関するドキュメントを見つけられませんでした、そしてそれがまだ生産準備ができているかどうかさえ知りません。

古いオプションであるcom.google.wireless.gdataパッケージはSDKから削除されたようです。それはまだGITリポジトリで利用可能です。

どちらのアプローチにも多くの時間を費やす前に、どちらが最もサポートされ、最も苦痛が少ないかを知りたいと思います。

4

5 に答える 5

32

Android をサポートするGoogle API Client Library for Java をご覧ください。

また、最近発表されたパーシャル レスポンス/アップデートやJSON-Cなどの新しいGDataテクノロジーもサポートしており、どちらも Android の効率を大幅に向上させることができます。

まず、Android デベロッパー ガイドをご覧ください。また、 Picasa Web Albums Data API の Android サンプルもご覧ください。このサンプルでは、​​フォト アルバムの作成、更新、削除、および写真のアップロードの機能を示しています。

完全開示: 私はgoogle-api-java-clientプロジェクトの所有者です。

于 2010-04-13T12:50:40.710 に答える
5

また、google-code プロジェクトと git リポジトリも調べました。必要なプロジェクトに付随する明らかな荷物のために、私はgoogle-codeプロジェクトから離れました。標準のJava APIを適応させるために、必要に応じてカスタム実装を作成することになりました。android-developers groupで私のソリューションの大まかな説明を見つけることができます。簡単にテストできる 4 つの短いクラスです。

于 2009-02-15T01:52:51.163 に答える
3

Android用Google SpreadSheet APIをお試しください

このプロジェクトは Google Code で管理しています。問題が発生した場合はお知らせください。

乾杯、プラサンタ

于 2010-12-15T08:12:21.313 に答える
2

Google Docs API を Android Eclipse プロジェクトで動作させるためのいくつかの手順を次に示します。

ネタバレ:SAX例外で(私にとっては)壊れます

1

GData Java ライブラリを取得します(言語ガイドから)

2

Android Javamail ポートから 3 つの jar を取得します。

3

lib フォルダーに次の jar を追加し、コンテキスト メニュー ([ビルド パス] -> [追加]) を使用してパスに追加します。

  • アクティベーション.jar (javamail)
  • additional.jar (javamail)
  • mail.jar (ジャバメール)
  • 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 (gdata フォルダーの deps フォルダーから)
  • jsr305.jar3. (gdataフォルダのdepsフォルダから)

4

AndroidManifest.xml に INTERNET 権限を追加することを忘れないでください。

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

5

サンプルコードを試してください:

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

logcat からの SaxException で、2 時間後に敗北を受け入れます。

WARN/XmlParser(1599): javax.xml.parsers.ParserConfigurationException:
org.xml.sax.SAXNotRecognizedException: http://xml.org/sax/features/external-parameter-entities
...
at com.google.gdata. wireformats.input.AtomDataParser.parse(AtomDataParser.java:68)

この最後の手順により、ServiceException が発生します。

于 2010-09-28T19:26:55.797 に答える
1

このAPIを使用しました

に変換しようとしました.jarが、問題がありました。プロジェクトをライブラリ プロジェクトとしてマークし、メイン プロジェクトで使用するのは簡単であることがわかりました。

于 2012-03-31T15:34:56.190 に答える