1

私は Android Studio の初心者で、Ajax を使用してデータベース サーバーにデータを送信しています。照会する必要がある 2 種類の HashMap パラメーターがあります。1 つはフォーム内のすべての文字列値用で、もう 1 つは画像ファイル用ですが、新しい Aquery.ajax(//parameters) メソッドへの 1 回の呼び出しでそれらを送信できないようです。このメソッドのすべてのバリエーションは、1 つの Map タイプのみの使用を制限します。

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();
        }
    }

null の JSON オブジェクトを取得し続けますが、それはすべてのパラメーターがクエリされるわけではない <--- 助けが必要な部分です。

コードのスニペットをさらに提供できることをうれしく思います。また、代替品があれば教えてください。

4

2 に答える 2