Вы можете попробовать аннотацию Retrofit @PartMap
вместо @Part
.Просто измените интерфейс API, как показано ниже,
@Multipart
@POST(UPDATE_PROFILE)
Call<SignUp> sendUpdateProfileRequest(
@Part("profile_img") RequestBody img_file,
@PartMap Map<String, RequestBody> params, /* notice the change here */
...
);
И используйте его вот так:
... // code
Map<String, RequestBody> params = new HashMap<>();
// prepare RequestBody
RequestBody someDataBody = ....;
// add it Map object
params.put("DYNAMIC_PARAM_NAME", someDataBody);
// pass it to request
FooApiInterface api = ....;
Call<FooResponse> call = api.sendUpdateProfileRequest(imageFile, params);
call.enqueue({/* implement response listener */});
Это должно помочь вам.