Я новичок в Android Studio и использую Ajax для отправки данных на сервер базы данных.
У меня есть два типа параметров HashMap, которые мне нужно запросить. Один предназначен для всех значений String в моей форме, а другой - для файла изображения, но я не могу отправить их одним вызовом нового метода Aquery.ajax (// parameters). Все варианты этого метода ограничивают использование только одного типа карты.
Я попытался поместить параметр ParamFile в другой запрос, но он все еще не работает. Хотя это может быть потому, что я не совсем уверен, что означает «обработчик объектов» здесь в определении другого метода.
Вот код для моего метода:
private void AddNewEquipment()
{
try {
//Two types of HashMap files
HashMap<String, String> param = new HashMap<>();
HashMap<String, Bitmap> paramFile = new HashMap<>();
param.put("listing_title", ETitle.getText().toString());
param.put("listing_type", String.valueOf(IntEquipmentType));
param.put("listing_desc", EDesc.getText().toString());
param.put("listing_rate", ERate.getText().toString());
param.put("listing_mode", Mode);
paramFile.put("listing_img_file", bitmap); //this never gets queried
param.put("listing_date_from-x", AvailableFromDT);
param.put("listing_date_to-x", AvailableToDT);
param.put("listing_sell_mode", SellMode);
param.put("listing_display_mode", String.valueOf(IntAdType));
param.put("listing_status", String.valueOf(IntAdStatus));
AQuery aq = new AQuery(this);
aq.ajax(BASE_URL, param, JSONObject.class, new AjaxCallback<JSONObject>() {
@Override
public void callback(String url, JSONObject json, AjaxStatus status) {
super.callback(url, json, status);
Log.v("CALLBACK RECEIVED", String.valueOf(json) + status);
try {
if (json != null) {
JSONObject h = json.getJSONObject("success");
Log.v("SUCCESS", "DONE");
Toast.makeText(AddEquipment.this, "New Equipment Added", Toast.LENGTH_LONG).show();
exitEquipmentForm(); //method that opens the main activity again
} else {
Log.v("ERROR", "ERROR");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}.method(AQuery.METHOD_POST).header("Authorization", "Bearer "+SessionHandler.getKeyToken()));
} catch (Exception e) {
e.printStackTrace();
}
}
Я продолжаю получать нулевые объекты JSON, хотя это потому, что не все параметры запрашиваются <--- Часть, в которой мне нужна помощь. </p>
Я рад предоставить больше фрагментов моего кода. Пожалуйста, дайте мне знать о любых альтернативах.