Android实现多图上传 QQ发说说图片上传 朋友圈图片上传

本demo使用七牛上传来做的图片,视频上传.

别的先不说,先上效果图 , 不想看的也可以直接拖到最下面进入我的github下载,
选择上传的是视频还是图片选择图片上传图片

第一步:

build.gradle里面导入:
compile ‘top.zibin:Luban:1.0.9’ //luban进行图片压缩
compile ‘com.android.support:design:25.3.1’
compile ‘com.qiniu:qiniu-android-sdk:7.2.+’//七牛
compile ‘me.iwf.photopicker:PhotoPicker:0.1.8’//图片选择
compile ‘cn.fanrunqi:waveprogress:1.0.1’//上传效果

第二步:

服务端对七牛进行集成并提供接口
如:String url = “http://112.74.28.179:8080/Chislim/Travel_notes_Servlet?dowhat=getUpLoadToken“;
代码里面对七牛上传进行初始化设置

//对七牛的初始化设置
    private void initConfig() {
        Configuration config = new Configuration.Builder()
                .chunkSize(256 * 1024)  //分片上传时,每片的大小。 默认256K
                .putThreshhold(512 * 1024)  // 启用分片上传阀值。默认512K
                .connectTimeout(10) // 链接超时。默认10秒
                .responseTimeout(60) // 服务器响应超时。默认60秒
                //       .recorder(recorder)  // recorder分片上传时,已上传片记录器。默认null
                //       .recorder(recorder, keyGen)  // keyGen 分片上传时,生成标识符,用于片记录器区分是那个文件的上传记录
                .zone(Zone.zone0) // 设置区域,指定不同区域的上传域名、备用域名、备用IP。默认 Zone.zone0
                .build();
        // 重用uploadManager。一般地,只需要创建一个uploadManager对象
        uploadManager = new UploadManager(config);
    }

初始化七牛完毕后,点击按钮发送请求得到七牛的token并携带token进入发送说说的页面.

client.newCall(request).enqueue(new okhttp3.Callback() {
            @Override
            public void onResponse(okhttp3.Call call, okhttp3.Response response) throws IOException {

                String token = response.body().string();
                Log.i("七牛", token);

                //第三步跳转至 发布说说页面
                Intent intent = new Intent(MainActivity.this , PublishHumorActivity.class);
                intent.putExtra("token" , token) ;
                startActivityForResult(intent , GOTO_PUBLISH_HUMOR_REQUEST);
            }

            @Override
            public void onFailure(okhttp3.Call call, IOException e) {
                Log.i("七牛", e.getMessage());
            }
        });

第三步

建立bean对象,用来接受上传的信息

public class HumorImgAndVideoBean {
    public String fileName =""; //文件名
    public String path =""; // 本地路径
    public String urlPath ="" ; //网络路径,上传时只需要上传这个给服务端存储.
    public String compresPath="" ; //图片压缩过后的路径
    public boolean isVideo ;//判断是否为视频
    public int proess = 0 ; //上传的进度

}

第四步

构建布局文件,这个部分就不代码了哈…
构建给recyclerView的adapter

public class HumorImgAndVideoAdpter extends RecyclerView.Adapter {
   
    private Context mContext ;
    private List<HumorImgAndVideoBean> lists ;

    private OnMyItemClick onMyItemClick ;

    public 
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值