java - 无法使用 Google Drive Java SDK 上传文件的缩略图
问题描述
我一直在开发允许打开 Google Drive 无法为其生成缩略图的文件的应用程序,但我正在开发的应用程序可以。我一直在关注这篇文章:https ://developers.google.com/drive/api/v3/file#uploading_thumbnails ,结果在我的应用程序中有以下代码:
File file = drive.files().get(fileId).setFields("id,name,headRevisionId,hasThumbnail,contentHints").execute();
if (file != null && file.getHeadRevisionId().equals(versionId)) {
File.ContentHints.Thumbnail customThumbnail = new File.ContentHints.Thumbnail();
customThumbnail.encodeImage(imageData);
customThumbnail.setMimeType("image/png");
File.ContentHints contentHints = new File.ContentHints();
contentHints.setThumbnail(customThumbnail);
drive.files().update(fileId, new File().setContentHints(contentHints)).execute();
}
图像存在 - imageData 是 byte[] 并且其中包含适当的数据。Google Drive 似乎检索了这些数据,因为如果我尝试打开已上传缩略图的文件的预览(在 drive.google.com 上) - 它会尝试加载它,但不断显示“失败,重试”。
如果我进行“非安全”base64 编码 - 我可以在浏览器和任何查看器中打开此图像 URL,并且我尝试传递此“非安全”base64 编码字符串,但结果是相同的。
我的代码是否有问题,或者我在文档中遗漏了某些内容,或者这是 Google Drive 方面的问题?
解决方案
推荐阅读
- ruby-on-rails - 附件控制器中的名称错误#indicateur
- msbuild - 部署服务结构 Visual Studio 构建失败
- mysql - 设计用于存储书籍、版本、颜色的表格布局
- redux - 是否可以通过 redux 存储在兄弟组件之间共享承诺?
- json - Springboot - 空获取休息响应
- gulp - 每次我运行 gulp 任何东西时,我都会收到一个断言错误。- 必须指定任务功能
- asp.net - IIS 在 ASP.NET 核心 NOPCommerce 的子文件夹中部署 php 应用程序
- c# - 只能在 DependencyObject 的 DependencyProperty 上设置绑定?
- c# - 查询存储为 XML 的字符串属性
- javascript - JavaScript:获取对象的属性值