您的位置:首页 > 理论基础 > 计算机网络

Android okHttp上传单张或多张照片

2016-05-04 18:25 531 查看
private static final MediaType MEDIA_TYPE_PNG = MediaType.parse("image/png");

private final OkHttpClient client = new OkHttpClient();


private void uploadImg() {

// mImgUrls为存放图片的url集合
MultipartBody.Builder builder = new MultipartBody.Builder().setType(MultipartBody.FORM);
for (int i = 0; i <mImgUrls.size() ; i++) {
File f=new File(mImgUrls.get(i));
if (f!=null) {
builder.addFormDataPart("img", f.getName(), RequestBody.create(MEDIA_TYPE_PNG, f));
}
}
//添加其它信息
//        builder.addFormDataPart("time",takePicTime);
//        builder.addFormDataPart("mapX", SharedInfoUtils.getLongitude());
//        builder.addFormDataPart("mapY",SharedInfoUtils.getLatitude());
//        builder.addFormDataPart("name",SharedInfoUtils.getUserName());

MultipartBody requestBody = builder.build();
//构建请求
Request request = new Request.Builder()
.url(Constant.BASE_URL)//地址
.post(requestBody)//添加请求体
.build();

client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {

System.out.println("上传失败:e.getLocalizedMessage() = " + e.getLocalizedMessage());
}

@Override
public void onResponse(Call call, Response response) throws IOException {

System.out.println("上传照片成功:response = " + response.body().string());
ToastCustom.makeText(PictureListActivity.this, "上传成功", Toast.LENGTH_LONG).show();

}
});

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: