Google SpreadsheetService似乎是“正在进行中”,有时/突然缓慢的答案,随机错误消息等。有些人已经建议我在使用Spreadsheet API时尽可能使用Google Drive API。但我找不到关于Google云端硬盘/电子表格API组合的合适文档。
通过一些调试和试用/错误,我在SpreadsheetEntry
级创建了一个“入口点”:
String lSpreadsheetFileId = pSpreadsheetFile.getId();
String lSpreadsheetUrlString = String.format("https://spreadsheets.google.com/feeds/spreadsheets/%s", lSpreadsheetFileId);
URL lSpreadsheetUrl = new URL(lSpreadsheetUrlString);
SpreadsheetEntry lSpreadsheetEntry = mSpreadsheetService.getEntry(lSpreadsheetUrl, SpreadsheetEntry.class);
现在我可以开始查看SpreadsheetService或Google Drive File。两者都提供SpreadsheetEntry
。从这一点来看,两种情况下的代码都是相同的。
这样可行,但这是我自己的谷歌黑客解决方案,它可能会破坏界面上的更新。我看到一些帖子有更“官方”的方法:
urlFactory.getWorksheetFeedUrl(file.getId(), "private", "full"); // (or any other feed url builder). file.getId()
将Google云端硬盘文件与Google电子表格一起使用的官方“按设计”方式是什么?
我可以获得一些真实的代码示例(超过;“只使用Feed”等)?
答案 0 :(得分:0)
Google电子表格服务已被弃用。使用Google Apps Script API代替您在集成Google云端硬盘和电子表格时的实施。使用Apps Script API,您几乎可以在应用程序中实现大部分Google Apps集成。
答案 1 :(得分:0)
如果您确实需要SpreadsheetEntry
,则必须筛选SpreadsheetFeed
并查找密钥。您可以实现标题查询以减少要检查的电子表格数量:
SpreadsheetQuery spreadsheetQuery
= new SpreadsheetQuery(urlFactory.getSpreadsheetsFeedUrl());
spreadsheetQuery.setTitleQuery(spreadsheet);
SpreadsheetFeed spreadsheetFeed = myService.query(spreadsheetQuery, SpreadsheetFeed.class);
似乎没有对密钥的查询。 但是,几乎没有需要SpreadsheetEntry的功能,并且无法使用Drive API或更低级别的Feed(Worksheed,List或CellFeed)来完成