0

我目前正在制作一个可以从 Google Drive 上传和下载文件的应用程序。我正在使用 Drive SDK 在 android 上开发。问题是每次我尝试从要上传的文件中设置修改日期时,我总是收到错误的请求错误 400。这是我的 snip 代码:

protected CDriveFile doInBackground(String... file) {
        // TODO Auto-generated method stub
        com.google.api.services.drive.model.File f=null;
        File a=new File(file[1]);
        com.google.api.services.drive.model.File body = new com.google.api.services.drive.model.File();
        body.setTitle(file[1].substring(file[1].lastIndexOf("/")+1, file[1].length()));
        Uri selectedUri = Uri.fromFile(a);
        String fileExtension 
         = MimeTypeMap.getFileExtensionFromUrl(selectedUri.toString());
        String mimeType 
         = MimeTypeMap.getSingleton().getMimeTypeFromExtension(fileExtension);
        body.setMimeType(mimeType);
        body.setModifiedDate(DateTime.parseRfc3339(file[2]));
        //without this, work well.. body.setModifiedDate(DateTime.parseRfc3339(file[2]));
        FileContent mediaContent = new FileContent(mimeType, a);
        try {
            f = service.files().insert(body, mediaContent).execute();
          }

当我没有设置修改日期时,文件上传没有任何错误。据我所知,我已经为 Google Drive 提供了正确的日期格式,即 RFC3339,如果我错了,请纠正我。我真的很感谢你们所有人的任何回答和关注..

4

1 回答 1

1

在 Drive API 参考中,我们有关于 modifiedDate 的描述:

上次此文件被任何人修改的时间(格式化的 RFC 3339 时间戳)。这仅在设置 setModifiedDate 参数时在更新时可变

所以我想你不能直接在插入时设置修改日期

于 2012-10-21T10:40:53.067 回答