Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用毕加索调整图像大小并添加到HttpPost_Java_Android_Http_Picasso - Fatal编程技术网

Java 使用毕加索调整图像大小并添加到HttpPost

Java 使用毕加索调整图像大小并添加到HttpPost,java,android,http,picasso,Java,Android,Http,Picasso,使用毕加索调整图像大小并使用HttpPost上传图像的最佳方法是什么 Bitmap bmp = Picasso.with(context) .load(path) .resize(1000, 1000) .centerInside() .onlyScaleDown() .get(); Multip

使用毕加索调整图像大小并使用HttpPost上传图像的最佳方法是什么

Bitmap bmp = Picasso.with(context)
                    .load(path)
                    .resize(1000, 1000)
                    .centerInside()
                    .onlyScaleDown()
                    .get();

MultipartEntity entity = new MultipartEntity();
entity.addPart("image", new FileBody(file));
实现这一点的最佳方式(记忆)是什么

澄清:现在我正在做

  • 位图b=Picasso.resize().get()

  • 创建新文件

  • 将位图b写入文件

  • 在HttpPost中包含文件


我正在寻找是否有一种更有效的方法

你可以用这种方法:

位图bmp=Picasso.with(上下文) .加载(路径) .调整大小(10001000) .centerInside() .onlyScaleDown() .get(); ByteArrayOutputStream=新建ByteArrayOutputStream(); compress(bitmap.CompressFormat.PNG,100,流); HttpEntity=MultipartEntityBuilder.create() .addBinaryBody(“image”、new ByteArrayInputStream(stream.toByteArray())、ContentType.create(“image/png”)、“filename.png”) .build(); 但是,据我所知,ApacheHttpClient在Android上已被弃用,我建议使用该库进行HTTP请求

例如:

Bitmap Bitmap=Picasso.with(上下文)
.加载(路径)
.调整大小(10001000)
.centerInside()
.onlyScaleDown()
.get();
ByteArrayOutputStream=新建ByteArrayOutputStream();
compress(bitmap.CompressFormat.PNG,100,流);
RequestBody RequestBody=新的MultipartBody.Builder()
.addFormDataPart(“image”、“filename.png”、RequestBody.create(MediaType.parse(“image/png”)、stream.toByteArray())
.build();
Request Request=newrequest.Builder()
.url(“https://example.com")
.post(请求主体)
.build();
OkHttpClient=新的OkHttpClient();
client.newCall(request).enqueue(new Callback()){
@凌驾
公共void onFailure(调用调用,IOE异常){
//处理失败
}
@凌驾
public void onResponse(调用调用、响应响应)引发IOException{
//处理服务器响应
}
});