Android客户端实现七牛云存储文件上传

本文详细介绍了Android客户端如何实现七牛云存储的文件上传,包括简单文件上传、分片文件上传和断点续传。在简单文件上传中,首先获取Token,然后进行文件上传,并记录上传进度和取消上传操作。对于分片上传,解释了相关概念并提供了代码示例。在断点续传部分,讨论了如何保存和利用已上传的块来继续上传过程。
摘要由CSDN通过智能技术生成

1.简单文件上传  上传模型如下。

image

   1.1获得Token

           不管是简单文件上传,还是分片上传、断点续传 都需要首先访问服务器,以获得上传凭证信息Token.。用于测试时,可以用本地模拟Token信息(有安全隐患,容易造成数据和空间数据危险)本地模拟Token信息 1.2《本地模拟Token》

    1.1.1本地模拟Token.  
/**
     * 获取token 本地生成
     * 
     * @return
     */
    private String getToken() {
        Mac mac = new Mac(QiNiuConfig.QINIU_AK, QiNiuConfig.QINIU_SK);
        PutPolicy putPolicy = new PutPolicy(QiNiuConfig.QINIU_BUCKNAME);
        putPolicy.returnBody = "{\"name\": $(fname),\"size\": \"$(fsize)\",\"w\": \"$(imageInfo.width)\",\"h\": \"$(imageInfo.height)\",\"key\":$(etag)}";
        try {
            String uptoken = putPolicy.token(mac);
            System.out.println("debug:uptoken = " + uptoken);
            return uptoken;
        } catch (AuthException e) {
            e.printStackTrace();
        } catch (JSONException e) {
            e.printStackTrace();
        }
        return null;
    }

   1.2简单文件实现上传(参考七牛官方文档)

小于4M,采用简单文件上传模式。从回调中获得上传最后信息,是失败或者是成功。

data = <File对象、或 文件路径、或 字节数组>
String key = <指定七牛服务上的文件名,或 null>;
String token = <从服务端SDK获取>;
UploadManager uploadManager = new UploadManager();
uploadManager.put(data, key, token,
new UpCompletionHandler() {
    @Override
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值