无法更新Google云端硬盘中的文件名
问题描述:
我正尝试使用Java更新Google云端硬盘中的文件。无法更新Google云端硬盘中的文件名
File f =
drive.files().update(fileId, null).setAddParents(newParentId).setRemoveParents(oldParentId).set("name", "new name").execute();
父文件夹已更新,但文件名未更新。
我在做什么错?
答
根据Working with File and Folder Metadata指南,文件名或标题属于元数据。
“元数据封装在元数据类,包含有关文件或文件夹,包括标题,MIME类型的所有 细节,并 文件是否为可编辑,主演或丢弃。”
要更改/更新元数据,您将使用MetadataChangeSet。
“的元数据可在创建时,或者通过使用MetadataChangeSet更新文件 ,设置适当的值,然后 调用DriveResource.updateMetadata方法来设定或改变。”
MetadataChangeSet changeSet = new MetadataChangeSet.Builder()
.setStarred(true)
.setIndexableText("Description about the file")
.setTitle("A new title").build(); //change/update demo
file.updateMetadata(getGoogleApiClient(), changeSet)
.setResultCallback(metadataCallback);
全样本是Android drive demo。
这个发展不是android之一。我正在关注https://developers.google.com/drive/v3/reference/files/update 文件名可以使用用户界面进行更新。我可以问一下“Patch body”是否映射到set()? – user5345102