下载对象
对象是存储数据的基本单元。对象由元信息(Object Meta),用户数据(Data)和文件名(Key)组成。对象由桶内部唯一的Key来标识。本文介绍如何下载对象。
接口定义:
// 简化接口
public S3Object getObject(String bucketName, String key)
// 完整接口
public S3Object getObject(GetObjectRequest getObjectRequest)
参数:
参数名 | 类型 | 说明 |
---|---|---|
s3ObjectIdBuilder | S3ObjectIdBuilder | 包含bucketName和key |
range | long[] | 获取文件的区间 |
generalProgressListener | ProgressListener | 进度回调 |
代码示例:
public void GetObjects(String bucketName, String objectKey,
OnS3ResponseListener<S3Object> listener) {
GlobalThreadPool.getInstance().execute(() -> {
try {
S3Object result = sS3Client.getObject(bucketName, objectKey);
Handler mainHandler = new Handler(Looper.getMainLooper());
mainHandler.post(() -> listener.onResponse(result));
} catch (Exception e) {
Handler mainHandler = new Handler(Looper.getMainLooper());
mainHandler.post(() -> listener.onError());
}
});
}