【发布时间】:2011-05-12 06:31:13
【问题描述】:
我已开始在 Honeycomb 上测试应用程序并收到以下错误消息:
com.google.gson.JsonParseException: The JsonDeserializer com.google.gson.DefaultTypeAdapters$CollectionTypeAdapter@408424f0 failed to deserialized json object
[{"type":"location","id":1,"name":"Manukau Heights","description":null,"children":[]},{"type":"location","id":2,"name":"Manukau Central","description":null,"children":[]},{"type":"location","id":3,"name":"Manukau City","description":null,"children":[]},{"type":"location","id":4,"name":"Redoubt North","description":null,"children":[]},{"type":"location","id":5,"name":"Redoubt South","description":null,"children":[]},{"type":"location","id":6,"name":"Goodwood Heights","description":null,"children":[]},{"type":"location","id":7,"name":"Totara Heights","description":null,"children":[]},{"type":"location","id":8,"name":"Totara Park","description":null,"children":[]}]
given the type com.google.gson.ParameterizedTypeImpl@8a7527
当使用 Gson 和 fromJson 时
MyLocation[] locations = gson.fromJson(in, MyLocation[].class);
我的位置如下所示:
private String name = "";
private String type = "";
private String id;
private List<MyLocation> children = new ArrayList<MyLocation>();
private String description = "";
我主要担心的是,这在 Honeycomb 之前的许多设备上都能完美运行。我尝试过以下方法: 连结 1 2.3.4, HTC 英雄 2.1 更新 1, 戴尔场地 2.2.2, 戴尔 Streak 7" 2.2.2, Garmin华硕2.1更新1
我没有看到任何异常(并且数据导入看起来很完美)。
任何人都可以提供建议,哪些可能会有所不同以及我可以如何管理它?
(我有一个类似的问题,XML 被不同地解析,但我设法解决这个问题去 Honeycomb)
问候, 朱利叶斯。
【问题讨论】: