Google Drive Java API:下一页令牌始终为null

时间:2015-07-01 15:10:37

标签: java google-drive-api

我有以下代码列出了目录的内容:

    final Drive.Files.List request = drive.files().list()
            .setQ("trashed=false and ('" + dirid + "' in parents)")
            .setFields("items(title,mimeType,downloadUrl,id)");
    final List<IFile> result = new ArrayList<IFile>();
    do {
        final FileList files = request.execute();
        for (com.google.api.services.drive.model.File file : files.getItems()) {
            final IFile f = toFile(file, directory);
            result.add(f);
        }
        request.setPageToken(files.getNextPageToken());
        // @todo mvy next page token is null????
        log.debug(directory + ": " + result.size() + " files so far, next page token=" + request.getPageToken() + " " + files.getNextPageToken() + " " + files.getNextLink());
    } while (request.getPageToken() != null &&
            request.getPageToken().length() > 0);

如果我浏览包含206个文件的大型目录,则仅返回前100个文件,并且下一个页面标记始终为空。这是一个错误还是我错过了什么?

我从这里获取了示例代码:https://developers.google.com/drive/v2/reference/files/list

上面的代码始终打印

0B6WQxw8r8n6fRVFBVDhHc3ZGa3M[testing/konky/material-design-icons-2.0/social/drawable-xxhdpi/]: 100 files so far, next page token=null null null

1 个答案:

答案 0 :(得分:4)

嘿,在我寻找优化的过程中,我只要求Drive返回items字段。如果我打电话

 .setFields("items(title,mimeType,downloadUrl,id),nextPageToken"); 

正确检索令牌。