本项目涵盖了JAVA网络、Android网络操作(网络请求、WebView相关、常用第三方框架OkHttp&Volley)
本demo演示了InetAddress、URL的用法,模拟单客户端、多客户端的socket和udp的通信。
本demo演示了使用HttpClient、HttpUrlConnection发送网络请求。
本demo演示了js与java原生代码的交互,还有通过html与java原生代码的交互。
本demo演示了volley的常规使用和封装。
Volley Module中封装了自定义的请求对象CustomVolleyRequest和请求回调VolleyListener。
使用其封装get请求如下:
/**
* 使用自定义的get方式请求数据,二次封装
*/
private void volleyCustomGet(){
CustomVolleyRequest.requestGet(url, "volleyCustomGet",
new VolleyListener(this, VolleyListener.mListener, VolleyListener.mErrorListener) {
@Override
public void onMySuccess(String response) {
Toast.makeText(MainActivity.this, response, Toast.LENGTH_LONG).show();
Log.d(TAG, "volleyCustomGet-----" + response);
}
@Override
public void onMyError(VolleyError error) {
Toast.makeText(MainActivity.this, error.getMessage(), Toast.LENGTH_LONG).show();
Log.d(TAG, "volleyCustomGet error-----" + error.getMessage());
}
});
}
本demo演示了OkHttp的常规使用和封装。
demo中封装了CommonOkHttpClient里面有执行get、post、downloadFile的请求。
eg:
CommonOkHttpClient.post(CommonRequest.createPostRequest(CITY_URL, params),
new DisposeDataHandler(new DisposeDataListener() {
@Override
public void onSuccess(JSONObject responseObj) {
mResult.setText(responseObj.toString());
}
@Override
public void onFail(Object responseObj) {
Log.e(TAG, "post onFail------" + responseObj.toString());
}
}));