我有一个AsynTask
,尝试检索json
并解析它,但出现此错误:
03-21 11:38:07.033: E/AndroidRuntime(8439): FATAL EXCEPTION: main
03-21 11:38:07.033: E/AndroidRuntime(8439): java.lang.NullPointerException
03-21 11:38:07.033: E/AndroidRuntime(8439): at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)
03-21 11:38:07.033: E/AndroidRuntime(8439): at org.json.JSONTokener.nextValue(JSONTokener.java:94)
03-21 11:38:07.033: E/AndroidRuntime(8439): at org.json.JSONObject.<init>(JSONObject.java:154)
03-21 11:38:07.033: E/AndroidRuntime(8439): at org.json.JSONObject.<init>(JSONObject.java:171)
03-21 11:38:07.033: E/AndroidRuntime(8439): at Dic.proj.pkg.notifService.parse_if_update(notifService.java:191)
03-21 11:38:07.033: E/AndroidRuntime(8439): at Dic.proj.pkg.notifService$1$1$1.onPostExecute(notifService.java:153)
03-21 11:38:07.033: E/AndroidRuntime(8439): at Dic.proj.pkg.notifService$1$1$1.onPostExecute(notifService.java:1)
03-21 11:38:07.033: E/AndroidRuntime(8439): at android.os.AsyncTask.finish(AsyncTask.java:631)
03-21 11:38:07.033: E/AndroidRuntime(8439): at android.os.AsyncTask.access$600(AsyncTask.java:177)
03-21 11:38:07.033: E/AndroidRuntime(8439): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
03-21 11:38:07.033: E/AndroidRuntime(8439): at android.os.Handler.dispatchMessage(Handler.java:99)
03-21 11:38:07.033: E/AndroidRuntime(8439): at android.os.Looper.loop(Looper.java:137)
03-21 11:38:07.033: E/AndroidRuntime(8439): at android.app.ActivityThread.main(ActivityThread.java:4921)
03-21 11:38:07.033: E/AndroidRuntime(8439): at java.lang.reflect.Method.invokeNative(Native Method)
03-21 11:38:07.033: E/AndroidRuntime(8439): at java.lang.reflect.Method.invoke(Method.java:511)
03-21 11:38:07.033: E/AndroidRuntime(8439): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1027)
03-21 11:38:07.033: E/AndroidRuntime(8439): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)
03-21 11:38:07.033: E/AndroidRuntime(8439): at dalvik.system.NativeStart.main(Native Method)
这是我的parse_if_update
功能:
public static String parse_if_update(String jsonResponse) {
String update="no";
try {
JSONObject json = new JSONObject(jsonResponse);
update = json.getString("update");
} catch (JSONException e) {
e.printStackTrace();
}
if(update == null){
update="no";
}
return update;
}
怎么了?我花了两天时间来解决这个问题。有时我会遇到空值,但我不知道如何使用它们。
添加与null测试不同的简单方法。
public static String parse_if_update(String jsonResponse) {
String update="no";
if (jsonResponse != null) {
try {
JSONObject json = new JSONObject(jsonResponse);
if (json != null) {
update = json.getString("update");
}
} catch (JSONException e) {
e.printStackTrace();
}
if(update == null){
update="no";
}
}
return update;
}
那你还有问题吗?
我尝试了不同的方法在Android中解析JSON文件,但在打印出来时出现了错误。 这是我的整个JSON文件: 以下是我为使其正常工作而实现的代码: 这是onPostExecute方法: 我已经从这个网站的帮助来布局我的功能:https://www.androidhive.info/2012/01/android-json-parsing-tutorial/
问题内容: 我在Android的JSON解析中进行了很多搜索,但并不太确定。关于JSON解析,实际上有一个简短的想法,但还不清楚。 如何在应用程序中实现JSON解析? 问题答案: 这是一个非常简单的JSON字符串 为了得到它的值,使用像这样: 这是一个稍微复杂的json字符串 为了从此用途中提取值 希望这个对你有帮助...........
Hi iv'e刚刚启动了一个新应用程序,现在正在按照解析快速入门指南在此项目中设置解析。一切正常,直到我将此代码放入我的build.gradle: 然后,当我尝试运行我的应用程序时,我在gradle控制台中收到以下消息: *AGPBI: {"kind":"simple "," text ":"意外的顶级异常:"," sources ":[{ }]} AGP bi:{ " kind ":" simp
问题内容: 我最近将REST API升级为使用jersey 2.x,现在我无法以以前的方式检索JSON主体参数,因此不再调用这些方法。我的猜测是我缺少将JSON解析为java对象的依赖项,但是我不太确定我需要添加什么,任何帮助都值得赞赏。 pom.xml REST方式 FollowUserBean.java 问题答案: 您需要一个JSON提供程序 在撰写本文时,Jersey 2.x与以下模块集成以
问题内容: 我有JSON对象,如下所示: 我想在android中解析数据并将其存储到数据库中,但是我在Jsonobject中感到困惑,谢谢 问题答案: 以下是用于解析json字符串的代码段代码。请经历一下:
问题内容: 我有一个json对象是这样的: 我试图这样解析: 但是我不知道如何访问动态名称。我们如何解析这样的JSON -注意-Ya的 所有值都带有引号,例如:“ Yg&R_” 问题答案: 试试这个动态的JSON解析器