How to properly close Google Api Client MediaHttpUploader

六月ゝ 毕业季﹏ 提交于 2020-01-06 04:06:32

问题


I'm uploading a file use Google Api Java Client Drive service. I can't find how to close the streams.

final FileContent mediaContent = new FileContent(mimeType, new java.io.File(data));
final Drive.Files.Insert insert = mDriveService.files().insert(fileMetadata, mediaContent);
final MediaHttpUploader uploader = insert.getMediaHttpUploader();
uploader.setDirectUploadEnabled(false);

final File file = insert.execute();

Eventually throwing Strict Mode error

A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
java.lang.Throwable: Explicit termination method 'close' not called
at dalvik.system.CloseGuard.open(CloseGuard.java:184)
at java.io.FileInputStream.<init>(FileInputStream.java:80)
at com.google.api.client.http.FileContent.getInputStream(FileContent.java:71)
at com.google.api.client.googleapis.media.MediaHttpUploader.resumableUpload(MediaHttpUploader.java:397)
at com.google.api.client.googleapis.media.MediaHttpUploader.upload(MediaHttpUploader.java:336)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:418)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:343)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:460)
at com.mypackage.MyClass.myMethod(line)

来源:https://stackoverflow.com/questions/24306052/how-to-properly-close-google-api-client-mediahttpuploader

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!