将包含键值对的对象作为值传递给 Java/Android 中的哈希映射

Pass an object containing key value pairs, as a value to a hashmap in Java/Android

我在 android 中使用 Volley 库 到 post

JsonObjectRequest postRequest = new JsonObjectRequest(URL, new JSONObject(hashMap));

在新的 JsonObjectRequest 的第二个参数中,我将 hashmap 转换为 JSONObject。

下面是我的hashMap

 Map<String, Object> postparams = new HashMap<String, Object>()
        postparams.put("protocol", "A");
        postparams.put("service_type", "B");
        postparams.put("access_id",accessID);
        postparams.put("contact", contactDetails);

联系人键有一个嵌套的 JSON 作为这样的值

contact : { contactName: "ABCD", phoneNumber: "98980980980" }

我该怎么做?

我的尝试: 我尝试创建一个 hashmap 并用 jackson 转换它并传递它但是我收到一个错误,这是我将对象转换为 JSON两次。

作为 contact 键值为:

{ contactName: "ABCD", phoneNumber: "98980980980" }

表示要传递一个包含 contactNamephoneNumber 作为键值对的 JSONObject :

JSONObject json=new JSONObject();
json.put("contactName", contactDetails.getcontactName());
json.put("phoneNumber", contactDetails.getphoneNumber());

...
postparams.put("contact", json.toString());