Android - 在没有堆栈跟踪的情况下调用 getJSONArray 抛出 JSONException
Posted
技术标签:
【中文标题】Android - 在没有堆栈跟踪的情况下调用 getJSONArray 抛出 JSONException【英文标题】:Android - Calling getJSONArray throwing JSONException without stacktrace 【发布时间】:2011-02-05 01:32:48 【问题描述】:我目前正在开发一个从 JSON 提要中提取论坛列表的 android 应用。我正在尝试解析提要,并在调用 getJSONArray 后立即抛出 JSON 异常,而没有堆栈跟踪。返回的 JSON 存储在 JSONObject jobj 中,格式如下:
"Forum":
[
"ForumName":"CEC Employee Communications Forum","ForumId":"105",
"ForumName":"CEC External Stakeholder Relations Forum","ForumId":"109",
"ForumName":"See All...","ForumId":"0"
]
但是,在运行以下代码时,我会立即得到一个没有堆栈跟踪的异常:
JSONArray jarray = new JSONArray();
jarray = jobj.getJSONArray("Forum");
跑步
jobj.GetJSONArray("Forum").toString();
返回格式正确的数组:
[
"ForumName":"CEC Employee Communications Forum","ForumId":"105",
"ForumName":"CEC External Stakeholder Relations Forum","ForumId":"109",
"ForumName":"See All...","ForumId":"0"
]
我也试过
JSONArray jarray = new JSONArray(jobj.GetJSONArray("Forum").toString());
并立即抛出异常。
【问题讨论】:
【参考方案1】:那么,这样的事情没有帮助吗?我怀疑您是否可以在没有堆栈跟踪的情况下获得异常:
JSONarray jarray = null;
try
jarray = jobj.getJSONArray("Forum");
catch(JSONException je) je.printStackTrace();
【讨论】:
我试过了,并在该行上放了一个断点,但它直接跳过它并且在日志中什么也没打印。以上是关于Android - 在没有堆栈跟踪的情况下调用 getJSONArray 抛出 JSONException的主要内容,如果未能解决你的问题,请参考以下文章
NullPointerException 堆栈跟踪在没有调试代理的情况下不可用