我试图在android中使用JSON获取值,下面是我的代码,它显示了请求队列期间的空指针异常和错误 /** *方法发出json数组请求,其中响应以[ *从url请求数据 * */ 私有字符串urlJsonArry_local=”http://www.endorecord.in/endorecord/hospitaladmin/Api/device_hospitals.php?deviceid="; 私有void makeJsonArrayRequest(){ showpDialog(); JsonArrayRequest req=新的JsonArrayRequest(urlJsonArry_local+androidID, 新的Response.Listener(){ @凌驾 公共void onResponse(JSONArray响应){ Log.d(TAG,response.toString()); 试一试{ //解析json数组响应 //循环遍历每个json对象 jsonResponse=“”; 对于(int i=0;i

我试图在android中使用JSON获取值,下面是我的代码,它显示了请求队列期间的空指针异常和错误 /** *方法发出json数组请求,其中响应以[ *从url请求数据 * */ 私有字符串urlJsonArry_local=”http://www.endorecord.in/endorecord/hospitaladmin/Api/device_hospitals.php?deviceid="; 私有void makeJsonArrayRequest(){ showpDialog(); JsonArrayRequest req=新的JsonArrayRequest(urlJsonArry_local+androidID, 新的Response.Listener(){ @凌驾 公共void onResponse(JSONArray响应){ Log.d(TAG,response.toString()); 试一试{ //解析json数组响应 //循环遍历每个json对象 jsonResponse=“”; 对于(int i=0;i,android,Android,您应该在请求中传递url“http://www.google.com“+android不是这个。您上面提到的UrlurlJsonArry_local返回的是json对象响应而不是jsonArray,您的代码和json响应完全不相关 对于上面url中的Json响应 私有字符串urlJsonArry_local=“” RequestQueue queue=MyVolley.getRequestQueue(); JsonObjectRequest jsObjRequest=新的JsonObjectRe

您应该在请求中传递url
“http://www.google.com“+android
不是这个。您上面提到的Url
urlJsonArry_local
返回的是json对象响应而不是jsonArray,您的代码和json响应完全不相关

对于上面url中的Json响应

私有字符串urlJsonArry_local=“”

RequestQueue queue=MyVolley.getRequestQueue();
JsonObjectRequest jsObjRequest=新的JsonObjectRequest(Request.Method.POST,urlJsonArry_local,null/*此处传递的参数*/,
新的Response.Listener(){
@凌驾
公共void onResponse(JSONObject响应){
JSONObject jObject=响应;
字符串状态=jObject.getString(“状态”);
JSONArray hospitalArray=jObject.getJSONArray(“医院”);
//您的for循环在此解析医院阵列
hideProgressDialog();
}
},
新的Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
hideProgressDialog();
}
});
add(jsObjRequest);

请发布日志中的相关行,并告诉我们哪些行与日志中报告的行相对应。Bro下面您可以找到我的日志,我想问题出在第11-24行13:42:34.220:E/AndroidRuntime(22142):java.lang.RuntimeException:无法启动活动组件信息{com.networksys.doclogin/com.networksys.doclogin.ActivityMain}:java.lang。NullPointerException@Nafeel是否有任何同名的自定义类??示例与android中的相同查看itApplication Force Close是否可以发布日志,是否在清单中提供了internet权限
/**
     * Method to make json array request where response starts with [
     * Requesting data from url
     * */

private String urlJsonArry_local = "http://www.endorecord.in/endorecord/hospitaladmin/Api/device_hospitals.php?deviceid=";



private void makeJsonArrayRequest() {

    showpDialog();

    JsonArrayRequest req = new JsonArrayRequest(urlJsonArry_local +androidID,
            new Response.Listener<JSONArray>() {
                @Override
                public void onResponse(JSONArray response) {
                    Log.d(TAG, response.toString());

                    try {
                        // Parsing json array response
                        // loop through each json object
                        jsonResponse = "";
                        for (int i = 0; i < response.length(); i++) {

                            JSONObject person = (JSONObject) response
                                    .get(i);

                            String name = person.getString("hospitalid");
                            String email = person.getString("hospital_name");

                            /*JSONObject phone = person
                                    .getJSONObject("phone");
                            String home = phone.getString("home");
                            String mobile = phone.getString("mobile");
                            */

                            jsonResponse += "Name: " + name + "\n\n";
                            jsonResponse += "Email: " + email + "\n\n";
                            //jsonResponse += "Home: " + home + "\n\n";
                            //jsonResponse += "Mobile: " + mobile + "\n\n\n";

                        }
                        Toast.makeText(getApplicationContext(), jsonResponse, Toast.LENGTH_LONG).show();
                        //txtResponse.setText(jsonResponse);

                    } catch (JSONException e) {
                        e.printStackTrace();
                        Toast.makeText(getApplicationContext(),
                                "Error: " + e.getMessage(),
                                Toast.LENGTH_LONG).show();
                    }

                    hidepDialog();
                }
            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d(TAG, "Error: " + error.getMessage());
                    Toast.makeText(getApplicationContext(),
                            error.getMessage(), Toast.LENGTH_SHORT).show();
                    hidepDialog();
                }
            });

    // Adding request to request queue
    AppController.getInstance().addToRequestQueue(req);
}
RequestQueue queue = MyVolley.getRequestQueue();
JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.POST,urlJsonArry_local,null/* paramateres passed here*/,
    new Response.Listener<JSONObject>() {
        @Override
        public void onResponse(JSONObject response) {

             JSONObject jObject = response;
             String status = jObject.getString("status");
             JSONArray hospitalArray = jObject.getJSONArray("hospital");

              //your for loop to parse hospital array here

             hideProgressDialog();
        }
    },
    new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
             hideProgressDialog();
        }
    });
queue.add(jsObjRequest);