Android Volley Display JSON Data -


okay have simple app display data json..unfortunatelly everytime run app, closed immediately.

i have working fine api in server

<?php  if($_server['request_method']=='get'){  mysql_connect("localhost","k4371034_android","android123"); mysql_select_db("k4371034_android");  switch($_get['case']){ case 'sekolah': $sql = "select * lokasi_checkin";  $r = mysql_query($sql);  $return_arr = array(); while($row = mysql_fetch_array($r)){     $row_array['id'] = $row['id'];     $row_array['image'] = $row['image'];     $row_array['nama'] = $row['nama'];     $row_array['long'] = $row['long'];     $row_array['lat'] = $row['lat'];      array_push($return_arr,$row_array); }  echo json_encode($return_arr); die(); break;  case 'user': $sql = "select * user";  $r = mysql_query($sql);  $return_arr = array(); while($row = mysql_fetch_array($r)){     $row_array['id'] = $row['id'];     $row_array['user'] = $row['user'];     $row_array['image'] = $row['image'];      array_push($return_arr,$row_array); } echo json_encode($return_arr); die(); break;   }  } 

it output fine.

in java itself.

public class mainactivity extends appcompatactivity {  // log tag private static final string tag = mainactivity.class.getsimplename();  // movies json url private static final string url = "http://www.lineitopkal.com/android/api.php?case=user"; private progressdialog pdialog; private list<school> schoollist = new arraylist<school>(); private listview listview; private customlistadapter adapter;  @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_main);      listview = (listview) findviewbyid(r.id.list);     adapter = new customlistadapter(this, schoollist);     listview.setadapter(adapter);       pdialog = new progressdialog(this);     // showing progress dialog before making http request     pdialog.setmessage("loading...");     pdialog.show();  //creating volley request obj     jsonarrayrequest schoolreq = new jsonarrayrequest(url,             new response.listener<jsonarray>() {                 @override                 public void onresponse(jsonarray response) {                     log.d(tag, response.tostring());                     hidepdialog();                      // parsing json                     (int = 0; < response.length(); i++) {                         try {                              jsonobject obj = response.getjsonobject(i);                             school school = new school();                             school.setthumbnailurl(obj.getstring("image"));                             school.setname(obj.getstring("user"));                              // adding school school array                             schoollist.add(school);                          } catch (jsonexception e) {                             e.printstacktrace();                         }                      }                      // notifying list adapter data changes                     // renders list view updated data                     adapter.notifydatasetchanged();                 }             }, new response.errorlistener() {         @override         public void onerrorresponse(volleyerror error) {             volleylog.d(tag, "error: " + error.getmessage());             hidepdialog();          }     });      // adding request request queue     appcontroller.getinstance().addtorequestqueue(schoolreq); }  @override public void ondestroy() {     super.ondestroy();     hidepdialog(); }  private void hidepdialog() {     if (pdialog != null) {         pdialog.dismiss();         pdialog = null;     } }  @override public boolean oncreateoptionsmenu(menu menu) {     return true;   } } 

cannot see cause problem cuz android studio didn't tell problem is....it showed nothing in logcat.

any answer appreciated. thank u

edit

okay turns out problem comes appcontroller class...which giving null pointer exception.

the syntax

public class appcontroller extends application {  public static final string tag = appcontroller.class.getsimplename();  private requestqueue mrequestqueue; private imageloader mimageloader;  private static appcontroller minstance;  @override public void oncreate() {     super.oncreate();     minstance = this; } public static synchronized appcontroller getinstance() {     return minstance; }  public requestqueue getrequestqueue() {     if (mrequestqueue == null) {         mrequestqueue = volley.newrequestqueue(getapplicationcontext());     }      return mrequestqueue; }  public imageloader getimageloader() {     getrequestqueue();     if (mimageloader == null) {         mimageloader = new imageloader(this.mrequestqueue,                 new lrubitmapcache());     }     return this.mimageloader; }  public <t> void addtorequestqueue(request<t> req, string tag) {     // set default tag if tag empty     req.settag(textutils.isempty(tag) ? tag : tag);     getrequestqueue().add(req); }  public <t> void addtorequestqueue(request<t> req) {     req.settag(tag);     getrequestqueue().add(req); }  public void cancelpendingrequests(object tag) {     if (mrequestqueue != null) {         mrequestqueue.cancelall(tag);     }   } } 

  1. use php code bellow..

     $sql = "select * user";  $result = $con->query($sql);  //$con database connection $response_arr = array();  if ($result->num_rows > 0) {    $userdetails = array();   while ($row = $result->fetch_assoc()) {      //  $response["id"] = $row["id"];       $userdata[] = array(       "id" => $row["id"],        "user" => $row["user"],                );      }    } else {   echo "0 results"; }  $result1['usernodes'] = $userdata; $json = json_encode($result1); echo $json; 
  2. volley code use

     private void dologinaction() {   pdialog.show();   string url_login = "http://www.lineitopkal.com/android/api.php?case=user";   stringrequest stringrequest = new stringrequest(request.method.post, url_login,         new response.listener<string>() {             @override             public void onresponse(string response) {                 //pdialog.dismiss();                   try {                     jsonobject jsonobject = new jsonobject(response);                     jsonarray loginnodes = jsonobject.getjsonarray("usernodes");                     (int = 0; < loginnodes.length(); i++) {                         jsonobject jo = loginnodes.getjsonobject(i);                         string id = jo.getstring("id");                         log.e("id ::",id);                                                         string user = jo.getstring("user");                         log.e("user ::",user);                       }                 } catch (jsonexception e) {                     e.printstacktrace();                 }               }         },         new response.errorlistener() {             @override             public void onerrorresponse(volleyerror error) {                 pdialog.dismiss();                 try {                      if (error instanceof timeouterror ) {                         //time out error                      }else if(error instanceof noconnectionerror){                         //net work error                      } else if (error instanceof authfailureerror) {                         //error                      } else if (error instanceof servererror) {                         //erroor                     } else if (error instanceof networkerror) {                         //error                      } else if (error instanceof parseerror) {                         //error                      }else{                         //error                     }                     //end                   } catch (exception e) {                   }              }         }) {     @override     protected map<string, string> getparams() {         map<string, string> params = new hashmap<>();         //post parameter bellow         params.put("uname", "era@gmail.com");         params.put("pass", "123456");            return params;     }  };    requestqueue requestqueue = volley.newrequestqueue(this);   requestqueue.add(stringrequest);  } 

Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -