Google drive api Google drive java api返回已删除的文件
我已尝试在编辑该驱动器文件时获取推送通知。 一切都很好,直到我试图从谷歌硬盘用户界面删除这些文件夹。它们从UI中消失了,但我的服务仍然接收它们,就好像它们存在一样Google drive api Google drive java api返回已删除的文件,google-drive-api,Google Drive Api,我已尝试在编辑该驱动器文件时获取推送通知。 一切都很好,直到我试图从谷歌硬盘用户界面删除这些文件夹。它们从UI中消失了,但我的服务仍然接收它们,就好像它们存在一样 try { configdata = dao.getConfigByChannelId(channelId,IntegrationType.DRIVE); System.out.println("ACCESS TOKEN FOR CHANNEL ID: " + configdata.getAccess
try {
configdata = dao.getConfigByChannelId(channelId,IntegrationType.DRIVE);
System.out.println("ACCESS TOKEN FOR CHANNEL ID: " + configdata.getAccessToken());
GoogleCredential credential = new GoogleCredential().setAccessToken(configdata.getAccessToken());
Drive service = new Drive.Builder(httpTransport, jsonFactory, null)
.setApplicationName("Akoonu")
.setHttpRequestInitializer(credential).build();
Files.List files = service.files().list();
try {
Change change = service.changes().get(String.valueOf((Integer.parseInt(changeId) - 1))).execute();
System.out.println("Changed file ID: " + change.getFileId());
System.out.println("Check delete case: " + change.getDeleted());
if (change.getDeleted()) {
System.out.println("File has been deleted");
File changedFile = change.getFile();
strpath.replace(changedFile.getTitle(), "");
String path = strpath.replace(changedFile.getTitle(), "");
//deleteItem = iao.getIventoryItemByFilePathAndConfigId(changedFile.getTitle(), path, configdata.getId(), configdata.getAccountId());
deleteItem = iao.getIventoryItemByExternalId(changedFile.getId(), configdata.getId(), configdata.getAccountId());
itemService.deleteInventoryItem(deleteItem.getId(), deleteItem.getAccountId());
//deleteFilePathList.add(metadata.getPathDisplay().substring(1));
} else {
File changedFile = change.getFile();
System.out.println("Changed file Title: " + changedFile.getTitle());
.
.
.
.
.
我尝试了很多示例,但仍然没有修复。请帮助我。谢谢。我在项目中也遇到了此类问题,但经过很长时间后,我找到了解决方案 请在代码中使用查询字符串参数,如
Files.List request = service.files().list().setQ("trashed=false");
..
它肯定会解决这个问题
谢谢。在v3中,有一个“明显被划伤”的垃圾旗,这就是我解决问题的原因(现在)