Android-async-http回调逻辑的二次封装
Android-async-http 的用法
在导入jar包,和主清单文件中开启网络权限之后
<uses-permission android:name="android.permission.INTERNET"/>
对AsyncHttpResponseHandler类进行封装
Android-async-http网络开源库jar包和例子
http://download.csdn.net/detail/zhaihaohao1/9428168
Android-async-http 的用法
在导入jar包,和主清单文件中开启网络权限之后
<uses-permission android:name="android.permission.INTERNET"/>
在基本用法的基础上对AsyncHttpResponseHandler进行自定义为MyAsyncHttpResponseHandler
在acticity中调用
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myHttpGet();
// myHttpPost();
}
/**
* get请求
*/
private void myHttpGet() {
String url = "http://apis.juhe.cn/mobile/get?phone=13666666666&key=335adcc4e891ba4e4be6d7534fd54c5d";
AsyncHttpClient client = new AsyncHttpClient();
client.get(url, new MyAsyncHttpResponseHandler() {
@Override
public void onMySuccess(String result) {
Toast.makeText(MainActivity.this, "请求成功", 10).show();
Log.e("1", result);
}
@Override
public void onMyFailure(Throwable arg0) {
Toast.makeText(MainActivity.this, "请求失败", 10).show();
Log.e("1", ""+arg0);
}
});
}
/**
* post请求
* 对AsyncHttpResponseHandler进行自定义
*
*/
private void myHttpPost() {
String url = "http://apis.juhe.cn/mobile/get?";
RequestParams params = new RequestParams();
params.put("phone", "13666666666");
params.put("key", "335adcc4e891ba4e4be6d7534fd54c5d");
AsyncHttpClient client = new AsyncHttpClient();
client.post(url, params, new MyAsyncHttpResponseHandler() {
@Override
public void onMySuccess(String result) {
Toast.makeText(MainActivity.this, "请求成功", 10).show();
Log.e("1", result);
}
@Override
public void onMyFailure(Throwable arg0) {
Toast.makeText(MainActivity.this, "请求失败", 10).show();
Log.e("1", ""+arg0);
}
});
}
}
对AsyncHttpResponseHandler类进行封装
<span style="font-size:18px;">public abstract class MyAsyncHttpResponseHandler extends AsyncHttpResponseHandler {
@Override
public void onStart() {
super.onStart();
Log.e("1", "请求开始,弹出进度条框");
}
@Override
public void onSuccess(String arg0) {
super.onSuccess(arg0);
Log.e("1", "请求成功,隐藏进度条框:");
onMySuccess(arg0);
}
@Override
public void onFailure(Throwable arg0) {
super.onFailure(arg0);
Log.e("1", "请求失败,隐藏进度条框:");
onMyFailure(arg0);
}
public abstract void onMySuccess(String result);
public abstract void onMyFailure(Throwable arg0);
}
</span>
Android-async-http网络开源库jar包和例子
http://download.csdn.net/detail/zhaihaohao1/9428168