標籤:javabean webview json socket class
package com.jia.httputiltools;public interface HttpCallbackListener {void onFinish(String response);void onError(Exception e);}
package com.jia.httputiltools;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;/** * @author 姚文天 * */public class HttpUtil {public static void sendHttpRequest(final String address,final HttpCallbackListener listener) {new Thread(new Runnable() {@Overridepublic void run() {HttpURLConnection connection = null;try {URL url = new URL(address);connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod("GET");connection.setConnectTimeout(8000);connection.setReadTimeout(8000);connection.setDoInput(true);connection.setDoOutput(true);InputStream in = connection.getInputStream();BufferedReader reader = new BufferedReader(new InputStreamReader(in));StringBuilder response = new StringBuilder();String line;while ((line = reader.readLine()) != null) {response.append(line);}if (listener != null) {// 回調onFinish()方法listener.onFinish(response.toString());}} catch (Exception e) {if (listener != null) {// 回調onError()方法listener.onError(e);}} finally {if (connection != null) {connection.disconnect();}}}}).start();}}
package com.jia.httputiltools;import android.app.Activity;import android.os.Bundle;public class MainActivity extends Activity {String address = "http://blog.csdn.net/fang323619";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);HttpUtil.sendHttpRequest(address, new HttpCallbackListener() {@Overridepublic void onFinish(String response) {// 在這雷根據返回內容執行具體的邏輯}@Overridepublic void onError(Exception e) {// 在這裡對異常情況進行處理}});}}
Android網路連接工具最佳最佳化