我想使用drive api 将大文件(>10Mb)上传到Google Drive。使用直接上传,它可以很好地处理较小的文件(当有良好的 wifi 时):
Drive.Files.Insert insert = driveService.files().insert(fileMetadata, mediaContent);
MediaHttpUploader uploader = insert.getMediaHttpUploader();
uploader.setChunkSize(UPLOAD_CHUNK_SIZE);
uploader.setDirectUploadEnabled(true);
insert.execute();
现在,假设我们正在上传一个更大的文件。我们想要跟踪连接,因此我们使用 MediaHttpUploader 方法给出的可恢复上传...
uploader.setDirectUploadEnabled(false);
uploader.setProgressListener(new MediaHttpUploaderProgressListener() {
@Override
public void progressChanged(MediaHttpUploader mediaHttpUploader) throws IOException {
switch (mediaHttpUploader.getUploadState()) {
case INITIATION_STARTED: break;
case INITIATION_COMPLETE: break;
case MEDIA_IN_PROGRESS: break;
case MEDIA_COMPLETE: break;
}
}
});
好的。但没有任何状态媒体_失败, 我对么?当上传达不到时我该怎么办媒体_完成?
另外,我没有找到恢复上传的方法。所以即使 100Mb 上传到 90% 并失败,我所能做的就是重新开始?
PS:这个问题之前已经报告过,但没有成功检查上传和下载进度(适用于 Android 或 Java 的 Google Drive API) https://stackoverflow.com/questions/13580109/check-progress-for-upload-download-google-drive-api-for-android-or-java
Android Google Drive 断点续传经常失败 https://stackoverflow.com/questions/19349405/android-google-drive-resumable-upload-fails-very-often
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)