如何获取 V3 Google 驱动器 API 上的文件大小和修改日期?

How can I get file size and modified date on the V3 Google Drive API?

我正在 Android 上的 Google 驱动器 API 从 v2 升级到 v3,我想知道如何在查询文件时获取一些额外的字段,最好是没有分页。

这是我得到的代码:

FileList result = drive.files().list()
                .setQ("'root' in parents  and trashed=false")
                .setFields("files(id, name, fileSize, modifiedDate, mimeType)")
                .execute();

但是它说 invalid field selection fileSize

我还想要一种下载 url 文件的方法,该文件可以暂时用于与其他应用程序共享。这曾经可以通过 getDownloadUrl 并在 v2 上添加令牌来实现。

谢谢。

编辑:看起来正确的字段是:

            .setFields("files(id, name, size, modifiedTime)")

显然 files(size) 有效,但我没有看到它的记录。你可以试试here.

我不太确定getDownloadUrl。您可以在 this page 查看 v2 到 v3 的转换文档。它表明 files.get with ?alt=media 可能是 downloadUrl.

的合适替代品

当您从文件夹中获取文件时:

val files = driveService.files().list()
                    .setSpaces("appDataFolder")
                    .setFields("files(id, name, createdTime)")
                    .execute()

创建文件时:

val file = driveService.files().create(fileMetadata, mediaContent)
                    .setFields("id, name, createdTime")
                    .execute()

您可以看到所有可用的属性here