在Android上从Google云端硬盘下载Google表格电子表格

Jer*_*rth 5 java android google-api-java-client google-drive-android-api google-sheets-api

我正在开发一个Android应用程序,它使用gdata-java-client下载文档仅供显示.到目前为止,我有一个应用程序,它使用服务进行身份验证并显示用户文档列表.当用户选择文档时,对文档本身进行另一个查询.对txt,html,rtf和doc文件的请求很有效,但是当我以.csv或.xsl格式请求电子表格时,结果是意外的.

我正在使用HTTPResponse对象来存储HTTPRequest的结果.当我以.csv或.xsl格式请求文档时,HTTPResponse.parseAsString()方法会生成一个完整的html页面,该页面似乎是Google Docs主页.听起来很奇怪,但结果是登录页面的实际html.HTTPResponse.getStatusMessage返回200.

好像我在这里错过了一些简单的东西.是否有HTTPResponse的另一个属性包含.csv数据?

我很确定我使用正确的uri来下载电子表格,因为它可以在我通过浏览器下载时使用.在任何情况下,这是一个例子uri:

https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=0AsE_6_YIr797dHBTUWlHMUFXeTV4ZzJlUGxWRnJXanc&exportFormat=csv
Run Code Online (Sandbox Code Playgroud)

在此先感谢任何帮助:)

Vic*_*zel 5

我没有看到你的代码,但大多数肯定是你正在使用ClientLogin,并使用'writely'服务对Documents List API进行身份验证.但是,由于导出电子表格会触及spreadsheets.google.com,因此您需要使用ClientLogin对"明智"服务进行身份验证.从Java开始,这意味着使用Spreadsheets Java客户端库,该库在此处记录:http: //code.google.com/apis/documents/docs/3.0/developers_guide_java.html#DownloadingSpreadsheets

请注意顶部标有" 重要 " 的注释,其中包含以下链接:http: //code.google.com/apis/documents/docs/3.0/developers_guide_java.html#DownloadingSpreadsheetsClientLogin

在该链接中,详细说明了使用SpreadsheetClient实例.

祝好运 :)


Yan*_*bar 1

我对文档列表 API 不太熟悉,无法了解,但从您的描述来看,您可能遇到了文档列表 API 中的错误,对我来说这听起来像是一个需要修复的重要问题。

请在文档列表 API 论坛上报告您的问题,以增加知识渊博的人能够调查此问题的机会:

http://www.google.com/support/forum/p/apps-apis/label?lid=5c316c702e844c99&hl=en