Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
org.json.JSONException:在android studio中输入字符0处结束_Android_Json - Fatal编程技术网

org.json.JSONException:在android studio中输入字符0处结束

org.json.JSONException:在android studio中输入字符0处结束,android,json,Android,Json,当我试图从API检索JSON对象时,它会导致一个错误。我正在使用JSONObjectRequest来获得结果 这是我的活动方法: private void execute(最终上下文){ stringurl=UrlManager.getUrl(context,R.String.signup\uurl); User=User.getInstance(); 试一试{ url+=“&name=“+mFirstName+”&last=“+mLastName+”&mob=“+mMobile+ “&emai

当我试图从API检索JSON对象时,它会导致一个错误。我正在使用
JSONObjectRequest
来获得结果

这是我的活动方法:

private void execute(最终上下文){
stringurl=UrlManager.getUrl(context,R.String.signup\uurl);
User=User.getInstance();
试一试{
url+=“&name=“+mFirstName+”&last=“+mLastName+”&mob=“+mMobile+
“&email=“+mEmail”+
“&pass=“+UrlManager.prepareUrlPart(mPassword);
}捕获(例外e){
e、 printStackTrace();
}
最终进度对话框;
pDialog=新建进度对话框(上下文);
设置消息(“加载…”);
pDialog.setCancelable(假);
pDialog.show();
Response.ListenerListener=newresponse.Listener(){
@凌驾
公共void onResponse(JSONObject响应){
试一试{
JSONObject userObj=新的JSONObject();
userObj=response;//response.getJSONObject(“UserInfo”);
userInfo=newuserinfo();
LoadItem(上下文,(JSONObject)userObj);
字符串状态=response.getString(“状态”);
如果(状态=“1”){
//从json加载用户数据并将其保存到本地数据库中
//User=User.getInstance();
//user.loadFromJSon(响应);
///saveUser();
onResult(true);
}否则{
onResult(假);
}
}捕获(例外e){
Log.d(“错误”,例如getMessage());
e、 printStackTrace();
}
pDialog.disclose();
}
};
Response.ErrorListener ErrorListener=新的Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
Toast.makeText(上下文,“错误”,Toast.LENGTH_LONG).show();
pDialog.disclose();
}
};
JsonObjectRequest=newJSONObjectRequest(request.Method.POST,url,null,listener,errorListener);
MyApplication.getInstance().addToRequestQueue(请求);
}
我已经保证我的JSON是非空的。下面是一个JSON结果示例:

{“UserId”:60,“UserName”:“09111”,“Password”:“123”,“Email”:m@m.com“,”手机“:”09111111111“,”国有“:”0000000000“,”姓氏“:”mm“,”父亲姓名“,”生日“:”1990/10/11“,”州“:”1“}”
这就是问题中的错误:

org.json.JSONException: End of input at character 0 of 
private void execute(最终上下文)
{
stringurl=UrlManager.getUrl(context,R.String.signup\uurl);
User=User.getInstance();
试一试{
url+=“&name=“+mFirstName+”&last=“+mLastName+”&mob=“+mMobile+
“&email=“+mEmail”+
“&pass=“+UrlManager.prepareUrlPart(mPassword);
}捕获(例外e){
e、 printStackTrace();
}
最终进度对话框;
pDialog=新建进度对话框(上下文);
设置消息(“加载…”);
pDialog.setCancelable(假);
pDialog.show();
Response.Listener=新建Response.Listener()
{
@凌驾
公共void onResponse(JSONObject响应)
{
尝试
{
JSONObject userObj=响应;
userInfo=newuserinfo();
userInfo.LoadItem(上下文,
用户对象);
字符串状态=userObj.getString(“状态”);
如果(state.equals(“1”){
//从json加载用户数据并将其保存到本地数据库中
//User=User.getInstance();
//user.loadFromJSon(响应);
///saveUser();
onResult(true);
}否则{
onResult(假);
}
}
捕获(例外e)
{
Log.d(“错误”,例如getMessage());
e、 printStackTrace();
}
pDialog.disclose();
}
};
Response.ErrorListener ErrorListener=新的Response.ErrorListener()
{
@凌驾
公共无效onErrorResponse(截击错误)
{
Toast.makeText(上下文,“错误”,Toast.LENGTH_LONG).show();
pDialog.disclose();
}
};
JsonObjectRequest=newJSONObjectRequest(request.Method.POST,url,null,listener,errorListener);
MyApplication.getInstance().addToRequestQueue(请求);
}

为什么要创建新的
JSONObject
?只需使用参数
JSONObject response
。我尝试了这个方法,但没有成功@admI测试了另外两个错误:在java中使用错误的变量并使用==来比较字符串尝试{JSONObject userObj=new JSONObject(response);字符串状态=userObj.getString(“state”);if(state.equals(“1”)){//从json加载用户数据并将其保存到本地数据库//user user=user.getInstance();//user.loadFromJSon(响应);///user.saveUser();Log.e(“val”,state);}}}catch(JSONException e){e.printStackTrace();}当使用JSONObject userObj=newJSONObject(响应)时,我得到的错误是无法解析构造函数的“JSONObject(org.json.JSONObject)”
    private void execute(final Context context)
                {
                    String url = UrlManager.getUrl(context, R.string.signup_url);
                    User user = User.getInstance();
                    try {
                        url +=  "&name=" + mFirstName + "&last=" + mLastName + "&mob=" + mMobile  +
                                "&email=" + mEmail+
                                "&pass=" + UrlManager.prepareUrlPart(mPassword);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }


                    final ProgressDialog pDialog;
                    pDialog = new ProgressDialog(context);
                    pDialog.setMessage("Loading...");
                    pDialog.setCancelable(false);
                    pDialog.show();

                    Response.Listener<JSONObject> listener = new Response.Listener<JSONObject>()
                    {
                        @Override
                        public void onResponse(JSONObject response)
                        {
                            try
                            {
                             JSONObject userObj = response;
 userInfo = new UserInfo();
     userInfo.LoadItem(context,
     userObj); 
    String state = userObj.getString("State");
     if (state .equals("1")) { 
    // Load user data from json and save them into local database 
    // User user = User.getInstance(); 
    // user.loadFromJSon(response);
     /// user.saveUser();
     onResult(true); 
    } else { 
    onResult(false); 
    }
      }
     catch (Exception e)
                            {
                                Log.d("Error", e.getMessage());
                                e.printStackTrace();
                            }
                            pDialog.dismiss();
                        }
                    };

                    Response.ErrorListener errorListener = new Response.ErrorListener()
                    {
                        @Override
                        public void onErrorResponse(VolleyError error)
                        {
                            Toast.makeText(context, "Error", Toast.LENGTH_LONG).show();
                            pDialog.dismiss();
                        }
                    };

                    JsonObjectRequest request = new JsonObjectRequest(Request.Method.POST, url,null, listener, errorListener);
                    MyApplication.getInstance().addToRequestQueue(request);
                }