我在Android中使用Google Sheets API v4。
https://developers.google.com/sheets/api/quickstart/android
我需要知道最后一次修改表单的时间(包括用户);我需要这个人:
我想这样做:
Spreadsheet spreadsheet = sheetsService.spreadsheets().get(spreadsheetId).setIncludeGridData(true).execute();
Date date = spreadsheet.getProperties().getLastEditDate();
但是,当然,不存在这样的getLastEditDate()
property方法。是否需要调用参数或其他API方法来获取此数据?
更好的是获得每个单元格的修改日期...但是我会满足于整个电子表格或工作表的日期。
sheets api v3将在2020年3月被弃用,届时,您最好使用驱动器api。
https://developers.google.com/drive/api/v3/reference/files/list
你可以通过
看起来这不能用工作表API v4完成。
但是...它看起来确实可以用兼容的谷歌硬盘应用编程接口v3来完成。
注意:这个解决方案最好的部分是,我可以对这两个API使用相同的身份验证和凭据收集方法。例如,一旦我有了获取凭证的代码,我就可以交替和连续地将其用于API。
我是这么做的:
将此添加到我的构建中。gradle
(如下所示为我的API声明)
compile('com.google.apis:google-api-services-sheets:v4-rev468-1.22.0') {
exclude group: 'org.apache.httpcomponents'
}
compile('com.google.apis:google-api-services-drive:v3-rev69-1.22.0') {
exclude group: 'org.apache.httpcomponents'
}
我已经在使用EasyPermissions
方法获取帐户和凭据。这里有一个很好的例子。
然后
import com.google.api.services.drive.Drive;
...
protected Drive driveService = new Drive.Builder(transport, jsonFactory, credential)
.setApplicationName("My Application Name")
.build();
...异步:
private DateTime getSheetInformation() throws IOException {
String spreadsheetId = settings.getSpreadsheetId();
Drive.Files.Get fileRequest = driveService.files().get(spreadsheetId).setFields("id, modifiedTime");
File file = fileRequest.execute();
if (file != null) {
return file.getModifiedTime();
}
return null;
}
这在Sheets API中不可用,但您可以使用驱动器API的文件。get方法,该方法在响应中包含“modifiedTime”。(请注意,默认情况下,它将不包括修改的时间,您必须在“fields”参数中明确要求它。)
我必须将这些详细信息显示在gridview中,如Tempname,作为下拉列表中唯一的和相关的日期时间,以及标签中最后一次按名称运行。无法上传表格图片,因为我没有足够的声誉。 但是我无法在标签中获得Runby名称。怎么显示?下面是我的存储过程
在评论中,这是我在ATM上的代码: Atm I有两个函数:一个可以将字符串转换为日历的星期数,另一个是我正在搜索的方法。目前它只处理今天的一周中的一天正确的,应该做的工作为一周中的每隔一天的部分是缺失的(评论与...)
问题内容: 我需要获取一个月的第一个日期和最后一个。获取第一个是微不足道的,但是获取最后一个似乎需要一些逻辑,因为月份的长度不同,而2月的长度甚至会随着年份而变化。是否已经在JodaTime中内置了对此机制,还是应该自己实现? 问题答案: 怎么样: 以知道来源的方式传回,代表a 代表[每月的月份]栏位。 碰巧的是,该方法甚至记录在案,以推荐它用于此特定任务: 由于月份长度不同,此操作对于在每月
我有一张每天更新数据的表。我使用Java工作表API v4在我的java应用程序中加载数据,我需要在我的工作表上进行增量加载。有没有办法高效地做到这一点? 这是我的电话,但这每次都加载所有数据,是否可以添加过滤器以在特定日期后更新行?(考虑到表没有时间戳列,我可以使用行的插入/修改日期吗?) 另外,如果有时间戳列,是否有方法在加载前过滤数据?
问题内容: 我想从 handleClick 函数中给定的日期列表中获得最大日期。如何使用 moment.js 从日期列表中找到最大日期? 我有以下代码: 问题答案: 您可以使用moment.max函数:
下面是我用来访问过去10天前的日期的代码。输出为'20130103',即今天的日期。我如何返回今天的日期-10天?我被限制使用内置的java日期类,所以不能使用joda时间。