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 が発生します。