安卓开发okhttp上传多张照片
时间: 2023-06-18 11:06:33 浏览: 135
在 Android 开发中,可以使用 OkHttp 来上传多张照片。下面是一个简单的示例代码:
```java
public void uploadImages(List<File> files) {
OkHttpClient client = new OkHttpClient();
MultipartBody.Builder builder = new MultipartBody.Builder()
.setType(MultipartBody.FORM);
// 添加照片文件到 request body 中
for (int i = 0; i < files.size(); i++) {
File file = files.get(i);
builder.addFormDataPart(
"image" + i,
file.getName(),
RequestBody.create(MediaType.parse("image/*"), file)
);
}
RequestBody requestBody = builder.build();
Request request = new Request.Builder()
.url("https://your-api-endpoint.com/upload")
.post(requestBody)
.build();
// 发送请求
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
// 处理上传失败的情况
}
@Override
public void onResponse(Call call, Response response) throws IOException {
// 处理上传成功的情况
}
});
}
```
在上面的代码中,我们首先创建了一个 OkHttpClient 对象。然后使用 MultipartBody.Builder 来构建 request body,将多张照片文件添加到其中。最后,创建一个 POST 请求,并将 request body 设置为其 body。最后,使用 OkHttpClient 对象来发送请求。
在 onResponse() 回调方法中,我们可以处理上传成功的情况。如果上传失败,可以在 onFailure() 回调方法中处理。
阅读全文