我有一个函数与改造要求上传图片这样如何使用Retrofit Android上传图片?
void uploadPhoto(File file) {
RequestBody photo = RequestBody.create(MediaType.parse("application/image"), file);
RequestBody body = new MultipartBuilder()
.type(MultipartBuilder.FORM)
.addFormDataPart("photo", file.getName(), photo)
.build();
fragment.showProgressDialog(fragment.loading);
fragment.getApi().uploadPhoto(PrefHelper.getString(PrefKey.TOKEN), body)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(new Observer<GenericResponse>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
fragment.dismissProgressDialog();
Timber.e(e.getMessage());
}
@Override
public void onNext(GenericResponse response) {
fragment.dismissProgressDialog();
if (response.getCode() == 1) {
fragment.showSuccessDialog("Saving success", false);
userInfo();
}
}
});
}
,为例子,我有一个按钮来上传图片在我的片段
@OnClick(R.id.btnChangePicture)
void onChangePictureClicked() {
}
要我把
什么码OnChangePictureClicked
所以我可以从图库中选择图片,然后我向API请求它。
空隙uploadPhoto(文件文件)
由于
所以你有问题获取图像源或上传到服务器? – TruongHieu
我的问题是越来越图像来源@TruongHieu –
你能提供更多关于你想要采取什么来源的信息吗?像画廊或相机什么的..? – TruongHieu