全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

快速入门(Android)

最近更新时间:2023-06-08 11:30:21

快速入门

本节介绍如何快速使用云存储Android SDK完成常见操作,如创建存储空间、上传文件、下载文件等。

本工程的更多用法请参考以下两种方式:

  • 查看demo目录(包含上传本地文件、下载文件、断点续传、设置回调等示例),详情请点击查看
  • 直接 git clone 工程

运行本工程前,您需要配置必要参数 Config,配置 Config 示例代码如下:

public class Config {
    // 测试用AK&SK
    public static final String ACCESS_KEY__ID = "<yourAccessKeyId>";
    public static final String ACCESS_KEY_SECRET = "<yourAccessSecretKey>";
    // 访问的endpoint地址
    public static final String END_POINT = "<yourEndPoint>";
    // bucket名称
    public static final String BUCKET_NAME = "<bucketName>";
    // 重试时长
    public static final int  RETRY_TIMEOUT = 3000;
    // 最大重连次数
    public static final int MAX_RETRY_TIME = 10;
  
    // 上传到bucket的object key
    public static final String OBJECT_KEY = "test.jpg";
    // 下载到本地的文件名称
    public static final String DOWNLOAD_FILE_NAME = "formKs3.jpg";
}

创建存储空间

存储空间是全局命名空间,相当于数据的容器,可以存储若干文件。 以下代码用于新建一个存储空间:

// 创建指定名称的bucket
client.createBucket(Config.BUCKET_NAME, new CreateBucketResponceHandler() {
    @Override
    public void onFailure(int i, Ks3Error ks3Error, Header[] headers, String s, Throwable throwable) {
        System.out.println("创建失败!");
    }

    @Override
    public void onSuccess(int i, Header[] headers) {
        System.out.println("创建成功!");
    }
});

上传文件

以下代码用于将指定的本地文件上传到KS3:

String filePath = Environment.getExternalStorageDirectory().getPath();
// 待上传文件
File file = new File(filePath + "/storage/watch.jpg");
// 构造上传请求
client.putObject(Config.BUCKET_NAME, Config.OBJECT_KEY , file, new PutObjectResponseHandler() {
    @Override
    public void onTaskFailure(int i, Ks3Error ks3Error, Header[] headers, String s, Throwable throwable) {
      	// 上传失败 请求异常
        System.out.println("上传失败!");
    }

    @Override
    public void onTaskSuccess(int i, Header[] headers) {
        System.out.println("上传成功!");
    }

    @Override
    public void onTaskStart() {
	// 异步任务开启
    }

    @Override
    public void onTaskFinish() {
	// 任务结束
    }

    @Override
    public void onTaskCancel() {
	// 任务取消 可通过client.cancel(MainActivity.this);进行取消上传
    }

    @Override
    public void onTaskProgress(double v) {
	// 任务进度 这里可以得到上传的进度
    }
});

下载指定文件

以下代码用于将指定的KS3文件下载到本地:

// 下载文件的存放位置
String filePath = Environment.getExternalStorageDirectory().getPath();
File destFile = new File(filePath + "/storage/" + Config.DOWNLOAD_FILE_NAME);
// 请求下载指定的文件
client.getObject(this, Config.BUCKET_NAME, Config.OBJECT_KEY, new GetObjectResponseHandler(destFile, false) {
    @Override
    public void onTaskProgress(double v) {
	// 下载的进度
    }

    @Override
    public void onTaskStart() {
	// 下载任务开始
    }

    @Override
    public void onTaskFinish() {
	// 下载任务完成
    }

    @Override
    public void onTaskCancel() {
	// 下载任务取消 取消操作与取消上传是一样的
    }

    @Override
    public void onTaskSuccess(int i, Header[] headers, GetObjectResult getObjectResult) {
        System.out.println("下载成功");
    }

    @Override
    public void onTaskFailure(int i, Ks3Error ks3Error, Header[] headers, Throwable throwable, File file) {
        System.out.println("下载失败");
    }
});
文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈