Android 模拟表单上传 多图片上传

这里写图片描述
这里写图片描述
关键代码

//private List<String> mPictureList;
//private String mRealName;
//private String mUserCity;
//private String mInvitationCode;
//private int mSex;
//获取用户输入的信息和选择的图片,保存路径到mPictureList 
//点击上传按钮开始上传
private void uploadInfo() {
        //mProgressDialog.show();

        okhttp3.MediaType MEDIA_TYPE_PNG = okhttp3.MediaType.parse("image/jpg");
        okhttp3. OkHttpClient client = new okhttp3.OkHttpClient();
        MultipartBody.Builder builder = new MultipartBody.Builder().setType(MultipartBody.FORM);
        builder.addFormDataPart("uid", uid);
        builder.addFormDataPart("realname", mRealName);
        builder.addFormDataPart("sex", mSex+"");
        builder.addFormDataPart("city",mUserCity);
        for (int i = 0; i < mPicturePathList.size(); i++) {
            File f = new File(mPicturePathList.get(i));
            if (f.exists()) {
                builder.addFormDataPart("image[]", f.getName(), okhttp3.RequestBody.create(MEDIA_TYPE_PNG,f));
                LogUtils.i("imagefilepath="+f.getAbsolutePath());
            }
        }
        MultipartBody requestBody = builder.build();
        //构建请求
        okhttp3.Request request = new okhttp3.Request.Builder()
                .url(url)//地址
                .post(requestBody)//添加请求体
                .build();
        client.newCall(request).enqueue(new okhttp3.Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                LogUtils.i("onFailure" + e.toString());
                //失败
                Message message = handler.obtainMessage();
                message.what = 2;
                message.obj=e;
                handler.sendMessage(message);
            }

            @Override
            public void onResponse(Call call, okhttp3.Response response) throws IOException {
                String htmlStr = response.body().string();
                if (!TextUtils.isEmpty(htmlStr)){
                    LogUtils.i("htmlStr="+htmlStr);
                    //成功
                }

            }

        });

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值