java什么时候需要同步_Android什么时候用同步和异步,具体案例。

compile 'com.loopj.android:android-async-http:1.4.9'

一个网络客户端访问类:

public class NetClient {

private static URL url ;

public static URL getRul() {

try

{

url = new URL(GlobalValue.IP + GlobalValue.SLASH + GlobalValue.SERVERPATH);

return url;

}

catch (MalformedURLException localMalformedURLException)

{

localMalformedURLException.printStackTrace();

return null;

}

}

private static final String BASE_URL = getRul().toString();

private static AsyncHttpClient client = new AsyncHttpClient();

public static void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {

client.get(getAbsoluteUrl(url), params, responseHandler);

}

public static void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {

client.post(getAbsoluteUrl(url), params, responseHandler);

}

private static String getAbsoluteUrl(String relativeUrl) {

return  BASE_URL + relativeUrl;

}

}

在另一个类中调用,并实现异步操作

NetClient.post("", requestParams, new AsyncHttpResponseHandler() {

@Override

public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {

String JsonResult = null;

try {

JsonResult = IOUtils.toString(responseBody, "utf-8");

} catch (IOException e) {                    e.printStackTrace();

}

String strResult =  MainNet.this.localGson.fromJson(JsonResult,String.class);

if( strResult != null) {

MainNet.this.pMainActivity.onSendJsonRegisted(strResult);

}else{

Toast.makeText(MainNet.this.pMainActivity.getApplication(),"注册失败:服务器拒绝",Toast.LENGTH_LONG).show();

}

}

@Override

public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {

Toast.makeText(MainNet.this.pMainActivity.getApplication(),"注册失败:联网失败",Toast.LENGTH_LONG).show();

}

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值