我正在尝试使用Android上的Google云端硬盘api上传文件
我在上面的链接中注册了SignInActivityWithDrive.java。
但是没有上传文件,下载文件的示例
我想知道如何上传和下载文件
谢谢
答案 0 :(得分:1)
您可以在文档中找到uploading和downloading的基本示例。
上传
您可以通过以下任意一种方式发送上传请求:
- 简单上传:
uploadType=media
。用于快速传输小文件(5 MB或更小)。要执行简单的上传,请参阅 Performing a Simple Upload。- 分段上传:
uploadType=multipart
。为了快速传输小文件(5 MB或更少)和描述文件的元数据,所有 一个请求。要执行分段上传,请参阅 Performing a Multipart Upload。- 可恢复的上传:
uploadType=resumable
。对于更可靠的传输,尤其是大文件传输。断点续传 对于大多数应用程序是一个不错的选择,因为它们也适用于 小文件,每次上传需要一个额外的HTTP请求。 要执行可恢复的上传,请参考Performing a Resumable Upload。
以下示例显示了如何使用客户端库上传图像:
File fileMetadata = new File();
fileMetadata.setName("photo.jpg");
java.io.File filePath = new java.io.File("files/photo.jpg");
FileContent mediaContent = new FileContent("image/jpeg", filePath);
File file = driveService.files().create(fileMetadata, mediaContent)
.setFields("id")
.execute();
System.out.println("File ID: " + file.getId());
下载
取决于您要执行的下载类型-文件, Google文档或内容链接-您将使用以下之一 网址:
- 下载文件-files.get与
alt=media
file resource- 下载并导出Google文档-files.export
- 将用户链接到文件-从file resource到
webContentLink
基本下载的示例是:
String fileId = "0BwwA4oUTeiV1UVNwOHItT0xfa2M";
OutputStream outputStream = new ByteArrayOutputStream();
driveService.files().get(fileId)
.executeMediaAndDownloadTo(outputStream);