Android 如何使用volley在单个api调用中管理多种类型的发送参数?
如何管理的情况下,如果我只想发送文本,或只有图像,而不是都像这个代码。在这段代码中,当没有提供消息或imageBitmap时,volley会给出错误Android 如何使用volley在单个api调用中管理多种类型的发送参数?,android,android-volley,multipart,Android,Android Volley,Multipart,如何管理的情况下,如果我只想发送文本,或只有图像,而不是都像这个代码。在这段代码中,当没有提供消息或imageBitmap时,volley会给出错误 VolleyMultipartRequest multipartRequest = new VolleyMultipartRequest(Request.Method.POST, CHAT, new Response.Listener<NetworkResponse>() {
VolleyMultipartRequest multipartRequest = new VolleyMultipartRequest(Request.Method.POST, CHAT,
new Response.Listener<NetworkResponse>() {
@Override
public void onResponse(NetworkResponse response) {
Toast.makeText(MyActivity.this, response, Toast.LENGTH_SHORT).show();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.d("Error", error.toString());
error.printStackTrace();
}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<>();
params.put(MESSAGE, message);
return params;
}
@Override
protected Map<String, DataPart> getByteData() {
Map<String, DataPart> params = new HashMap<>();
params.put(FILE, new DataPart("Image.jpg", imageBitmap));
return params;
}
};
VolleySingleton.getInstance(getBaseContext()).addToRequestQueue(multipartRequest);
VolleyMultipartRequest multipartRequest=新的VolleyMultipartRequest(Request.Method.POST,CHAT,
新的Response.Listener(){
@凌驾
public void onResponse(NetworkResponse){
Toast.makeText(MyActivity.this,response,Toast.LENGTH_SHORT).show();
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
Log.d(“Error”,Error.toString());
错误。printStackTrace();
}
}) {
@凌驾
受保护的映射getParams(){
Map params=新的HashMap();
参数put(消息,消息);
返回参数;
}
@凌驾
受保护的映射getByteData(){
Map params=新的HashMap();
put(文件,新数据部分(“Image.jpg”,imageBitmap));
返回参数;
}
};
getInstance(getBaseContext()).addToRequestQueue(multipartRequest);