Android 关于七牛的上传图片遇到的问题

艹他大爷的 关于七牛传图片 n年以前就做过了,这次公司需求又要传图片,可是这次就出错了,返回的状态码为400,显示路径错误,做了差不多一天,用了反编译去改jar包路径等等 ,结果还是没用,后来有copy了很多demo,才发现只需要引入资源文件就可以了

地址是  https://github.com/qiniu/android-sdk?ref=developer.qiniu.com自己去下载

然后上传的时候一定要设置区域:

关键代码如下:

private void initdata() {
        bmp = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);
        //上传配置
        Configuration config = new Configuration.Builder()
                .chunkSize(256 * 1024)  //分片上传时,每片的大小。 默认 256K
                .putThreshhold(512 * 1024)  // 启用分片上传阀值。默认 512K
                .connectTimeout(10) // 链接超时。默认 10秒
                .responseTimeout(60) // 服务器响应超时。默认 60秒
                .zone(Zone.zone2) // 设置区域,指默认 Zone.zone0 注:这步是最关键的 当初错的主要原因也是他 根据自己的地方选
                .build();
        UploadManager uploadManager = new UploadManager(config);

        String key = "image_icon";
        String token = "naNOMsG13DVGLU2CHruTaSzLm73yYRwNpVDAQdYb:JwFVgwdQzYXIzrQMKsXNCkplwD0=:eyJzY29wZSI6InVwaW1nIiwiZGVhZGxpbmUiOjE0OTI2Nzk1MTF9";
        uploadManager.put(Bitmap2Bytes(bmp), key, token, new UpCompletionHandler() {
            @Override
            public void complete(String s, ResponseInfo responseInfo,
                                 JSONObject jsonObject) {
                if (responseInfo.isOK()) {
                    Log.e("success", "complete: ");
                } else {
                    Log.e("fail", s + responseInfo + jsonObject);
                }
                Log.e("qiniu", "complete: ");

            }
        }, null);
    }




    public byte[] Bitmap2Bytes(Bitmap bm) {  
            ByteArrayOutputStream baos = new ByteArrayOutputStream();  
            bm.compress(Bitmap.CompressFormat.PNG, 100, baos);  
            return baos.toByteArray();  
        }  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值