public static String Post(String url, RequestParams params) throws IOException{
Log.e(LOG, "Post");
if(url == null){
return null;
}
HttpUtils http = new HttpUtils();
http.send(HttpRequest.HttpMethod.POST, url, new RequestCallBack<String>() {
@Override
public void onLoading(long total, long current, boolean isUploading) {
super.onLoading(total, current, isUploading);
Log.e("HttpUtils","onLoading");
}
@Override
public void onStart() {
super.onStart();
Log.e("HttpUtils","onStart+post");
}
@Override
public void onSuccess(ResponseInfo<String> responseInfo) {
data = responseInfo.result;
Log.e("HttpUtils","success:"+data);
}
@Override
public void onFailure(HttpException e, String s) {
Log.e("HttpUtils",s);
}
});
Log.e(LOG,"PostFinish");
return data;
}
class HttpDownload extends Thread{
public void run(){
Log.e("HttpDownload","run");
try{
String data = HttpCommunicate.Post(url+url_login,params);
Log.e("HttpDownload",data);
map = JsonParser.JsontoMap(data);
token = map.get("toekn");
}catch (IOException e){
e.printStackTrace();
}
Message msg = new Message();
Bundle bundle = new Bundle();
bundle.putString("state", map.get("state"));
msg.setData(bundle);
if(mactivity instanceof MainActivity){
MainActivity.handler.sendMessage(msg);
}else{
Login.handler.sendMessage(msg);
}
}
}
子线程的data报空了,子线程和xutils的post请求是异步的,怎么解决啊::>_<::