android - AsyncTask doInBackground returns too soon -
i have asynctask
connecting websocket.
protected void doinbackground() { client.connect(); return null; }
when it's finished attempting connection, want following happen (currently inside onpostexecute
):
protected void onpostexecute() { if (socketconnected) { dootherthings(); } else { log("failed connect."); }
i've tossed in following, probe of sorts (in websocketclient
implementation):
public void onopen() { log("opened successfully!"); socketconnected = true; }
the onpostexecute
method prints failure message , followed success message onopen
. suggests doinbackground
returning soon. there common reason might happen?
yes, method client.connect() creates asynctask , leaves task continue executation, ending method , going onpostexecute.
if thats case, api using should have methods listening async messages. api should have listener or callback fired @ thread.
edit: searched webviewclient on internet , method connect() indeed creates new thread, should how use calls properly.
Comments
Post a Comment