1
我写了一个方法来创建一个JSONObject,用于工作。突然间我表现得很奇怪。通过调试器,我可以到达返回创建的JSONObject的那一行,但它总是跳转到返回null的最后一行,而不会去执行catch块。调试器告诉我,创建的对象是一个有效的JSONObject。return语句在调试时被忽略
import org.json.JSONObject;
...
JSONObject returnJson = new JSONObject();
try {
returnJson.put("event", event);
returnJson.put("list", jsonArray);
returnJson.put("type", "list");
returnJson.put("container", container);
Log.d(TAG, "created");
Log.d(TAG, returnJson.toString());
return returnJson;
} catch (JSONException e) {
Log.e(TAG, e.getMessage(), e);
}
Log.d(TAG, "null returned"); // never called in the non-debugging mode
return returnJson;
它能正常工作*不在调试器中吗?也许调试器的工作源与类文件不同步...... – 2015-03-13 11:32:47
我不这么认为。因为我无法调试,我只能猜测,但该项目的行为就像没有返回json对象一样。无论如何,我清除所有缓存并重新启动,我无法修复任何可能的不同步问题。 – richard 2015-03-13 11:35:08
那么你可以很容易地添加*日志记录*来查看它没有调试到底有多远...... – 2015-03-13 11:35:44