मैं जीएसओएन का उपयोग कर एंड्रॉइड में JSON क्रमबद्ध/deserialize करने की कोशिश कर रहा हूँ।कस्टम ऑब्जेक्ट्स के जीएसओएन Deserializing ऐरे
public class Session {
@SerializedName("name")
private String _name;
@SerializedName("users")
private ArrayList<User> _users = new ArrayList<User>();
}
और:
public class User {
@SerializedName("name")
private String _name;
@SerializedName("role")
private int _role;
}
मैं serializing/डेटा deserializing के लिए GSON उपयोग कर रहा हूँ मैं दो वर्गों है कि इस तरह लग रहे है। मैं तो जैसे को क्रमानुसार:
Gson gson = new Gson();
String sessionJson = gson.toJson(session);
यह JSON कि इस तरह दिखता है का उत्पादन करेगा:
{
"name":"hi",
"users":
[{"name":"John","role":2}]
}
और मैं की तरह तो deserialize:
Gson gson = new Gson();
Session session = gson.fromJson(jsonString, Session.class);
जब मैं कर मैं एक त्रुटि हो रही है यह कॉल
DEBUG/dalvikvm(739): wrong object type: Ljava/util/LinkedList; Ljava/util/ArrayList;
WARN/System.err(739): java.lang.IllegalArgumentException: invalid value for field
मुझे नहीं पता कि यह त्रुटि क्या है। मैं खुद को कुछ भी गलत गलत नहीं देख रहा हूं। कोई मदद? धन्यवाद!
जब मैं सत्र वर्ग में उपयोगकर्ता सूची को एक सूची में एक सूची में बदलता हूं तो समस्या दूर हो जाती है। क्या इससे जीएसओएन के लिए समस्या हो सकती है? –