LG工具类Util专项练习(一)
工具类Util的使用
//单例模式
private static HttpUtils httpUtils = new HttpUtils();
private HttpLoadListener httpLoadListener;
private HttpUtils() {
}
public static HttpUtils httpUtils() {if (httpUtils == null) {httpUtils = new HttpUtils();}return httpUtils;
}//get请求
public void get(String url) {new MyTask().execute(url);
}//使用AsyncTask
class MyTask extends AsyncTask {@Overrideprotected String doInBackground(String... strings) {String urll = strings[0];try {URL url = new URL(urll);HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setConnectTimeout(5000);if (connection.getResponseCode() == 200) {InputStream inputStream = connection.getInputStream();String json = steamToJson(inputStream);Log.d(TAG, "doInBackground: ====" + json);return json;}} catch (Exception e) {e.printStackTrace();}return null;}@Overrideprotected void onPostExecute(String s) {super.onPostExecute(s);httpLoadListener.loadSuccess(s);}
}//接口
public interface HttpLoadListener {void loadSuccess(String json);void loadError(String error);
}//判断网络状态
public static boolean hasNet(Context context) {//调用系统服务 连接服务ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);//通过链接管理器 获取可用网络信息if (manager != null) {NetworkInfo info = manager.getActiveNetworkInfo();if (info == null) {return false;} else {return true;}}return false;
}//使用接口
public void setOnHttpLoadListener(HttpLoadListener httpLoadListener) {this.httpLoadListener = httpLoadListener;
}//流转字符串
private String steamToJson(InputStream inputStream) throws IOException {char[] chars = new char[1024];int len = 0;InputStreamReader reader = new InputStreamReader(inputStream);StringBuffer stringBuffer = new StringBuffer();while ((len = reader.read(chars)) != -1) {String s = new String(chars, 0, len);stringBuffer.append(s);}return stringBuffer.toString();
}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
