【问题标题】:Unable to get specific Drive File thumbnailLink in Android Studio with Drive Api无法使用 Drive Api 在 Android Studio 中获取特定的 Drive File thumbnailLink
【发布时间】:2021-04-22 17:41:47
【问题描述】:

我正在尝试通过 Drive Api 在 android studio 中获取文件 thumbnailLink,但不断出现错误。授权和驱动服务工作得很好,我能够获取文件名并创建文件。但是,当我尝试获取文件的缩略图链接时,错误消息是

 I/error:: getting thumbnail:  println needs a message

这是我现在的代码,获取文件名的日志完美运行

public Task<File> getThumbnail(String fileId) {
    return Tasks.call(mExecutor, () -> {
        Log.i("chegou", "thumbnailLink");

        final File file =  mDriveService.files().get(fileId).execute();
        Log.i("file name", file.getName());
        Log.i("file thumbnail", file.getThumbnailLink());

        return null;
    });
}

另外,我尝试从谷歌游乐场中完全相同的文件中获取缩略图,并且效果很好

有没有人知道如何解决它?谢谢!

【问题讨论】:

    标签: java android android-studio google-drive-api google-drive-android-api


    【解决方案1】:

    所以,我刚刚发现了答案!显然驱动器中的每个缩略图都有一个永久链接,您只需要文件 id

    它是:https://drive.google.com/thumbnail?authuser=0&sz=w320&id=[fileid]

    编辑:

    另外,我刚刚发现,当您列出文件时,如果您放入 setFields thumbnailLink,您还可以获得一个临时 thumbnailLink

    这是一个示例代码:

     FileList searchList = mDriveService.files().list()
                        .setQ("name = '" + fileName + "'")
                        .setSpaces("drive")
                        .setFields("files(id, name,size,createdTime,modifiedTime,starred,thumbnailLink,mimeType)")
                        .execute();
    

    那么你只需要从列表中获取文件就可以得到它的thumbnailLink

    searchList.getFiles().get(0).getThumbnailLink()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-07
      • 1970-01-01
      • 2022-10-08
      • 1970-01-01
      • 2021-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多