使用 Google APIs Java 客户端,您可以将文件同步上传到云端硬盘
mDriveService.files().insert(body, mediaContent).execute();
是否有与新 Android 的 Google Play Services DriveApi 等效的功能?似乎您只能使用以下内容上传新文件:
Contents newContents = Drive.DriveApi.newContents(mGoogleApiClient).await().getContents();
OutputStream outStream = newContents.getOutputStream();
InputStream inputStream = new FileInputStream(myLocalFile);
byte[] data = new byte[16000];
while ((nRead = inputStream.read(data, 0, data.length)) != -1) {
outStream.write(data);
}
outStream.close();
MetadataChangeSet changeSet = new MetadataChangeSet.Builder()
.setTitle(fileContent.getName())
.setMimeType(mimeType)
.build();
DriveFileResult createResult = destFolder.createFile(mGoogleApiClient, changeSet, newContents).await();
我对上面代码的问题是,如果我要上传的本地文件非常大(例如考虑录制的视频),它会迫使你在设备的存储上复制文件,这在某些情况下会产生很大的问题。