java - Data appears before onPostExecute fired -


i have next strange problem, i'm trying parse response json data in background, because there's lot of data , call this:

protected asynctask<jsonobject, void, void> createparsetask() {      return new asynctask<jsonobject, void, void>() {         @override         protected void doinbackground(jsonobject... jsonobjects) {             parseresponse(jsonobjects[0]);             return null;         }          @override         protected void onpostexecute(void avoid) {             super.onpostexecute(avoid);              mprogressbar.setvisibility(view.gone);             if (!mempty) {                 if (swiperefresh.isrefreshing()) {                     swiperefresh.setrefreshing(false);                     madapter.notifydatasetchanged();                 } else if(!mshowstored) {                     madapter.notifydatasetchanged();                 }             } else if (mshowstored) {                 mprogressbar.setvisibility(view.gone);             } else {                 interneterror.setvisibility(view.visible);           interneterror.settext(getactivity().getresources().getstring(r.string.emptyrequesterror));             }              if (!mshowstored) {                 checkdata();             }          }     };  } 

and parseresponse() method written this:

protected void parseresponse(jsonobject response) {      jsonarray jsonarray = null;     jsonparser parser = new jsonparser();     ordersdatabase ordersdatabase = new ordersdatabase(appcontroller.getappcontext());     try {         sharedpreferences sp = preferencemanager.getdefaultsharedpreferences(appcontroller.getappcontext());         sharedpreferences.editor editor = sp.edit();         string datetime = response.getstring("serverdatetime");         datetime = datetime.replace(":", "%3a");         datetime = datetime.replace("+", "%2b");         editor.putstring("serverdatetime", datetime);         editor.apply();         jsonarray = response.getjsonarray("updatedorders");         jsonarray active = response.getjsonarray("activeorders");         if (jsonarray.length() == 0 && active.length() == 0) {             mempty = true;         } else if (response.length() > 0 || jsonarray.length() > 0 && active.length() > 0) {             (int = 0; < jsonarray.length(); i++) {                 jsonelement jsonelement = new jsonparser().parse(string.valueof(jsonarray.get(i)));                 jsonobject jsonobject = jsonelement.getasjsonobject();                  string orderid = jsonobject.getasjsonprimitive("id").getasstring();                  if (!mshowstored) {                     if (!ordersdatabase.checkorder(orderid)) {                         ordersdatabase.addorderdata(jsonobject.getasjsonprimitive("id").getasstring(), string.valueof(jsonobject));                     } else {                         ordersdatabase.updateorderdata(jsonobject.getasjsonprimitive("id").getasstring(), string.valueof(jsonobject));                     }                 }             }             (int = 0; < active.length(); i++) {                 jsonobject jsonobject = active.getjsonobject(i);                 string activeorder = jsonobject.getstring("id");                 activeorders.add(activeorder);                 if (ordersdatabase.checkorder(activeorder)) {                     if (!textutils.isempty(activeorder)) {                         jsonobject jsonorder = (jsonobject) parser.parse(ordersdatabase.getorderdata(activeorder));                         citylist.add(orderdata.fromjson(jsonorder));                     }                 }             }          }      } catch (jsonexception e) {         e.printstacktrace();     } } 

so don't know how, somehow data appeared in recyclerview there before onpostexecute shown, because in post execute progressbar should go invisible , notifydatasetchange should appear there. data appears before progressbar goes invisible , notifydatasetchange() fired, me please!

i don't have privilege comment, i'll post here: don't happen have listeners on ordersdatabase, citylist or activeorders?


Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -