获取网络数据的封装
来源:互联网 发布:阳西网络问政平台投诉 编辑:程序博客网 时间:2024/06/05 15:21
public class NetDataUtil {
/**
* 获取网络数据的方法
* @param path
*/
public static void getData(final String path, Context context, final JsonCallBack callBack){
//1.获取网络数据之前要判断网络的状态
if (NetWorkUtil.isConn(context)){
//可用就去获取数据...在这可以吐司
AsyncTask<Void, Void, String> asyncTask = new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... voids) {
try {
URL url = new URL(path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setReadTimeout(5000);
connection.setConnectTimeout(5000);
int responseCode = connection.getResponseCode();
if (responseCode == 200){
InputStream inputStream = connection.getInputStream();
String json = StringUtil.streamToString(inputStream,"utf-8");
return json;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String s) {
//以前我们做的操作是直接解析....现在在工具类里面通过接口回调的形式,把json格式的数据传递给具体调用这个方法的那个类
callBack.getJson(s);
}
};
//执行
asyncTask.execute();
}else {
NetWorkUtil.showNoNetWorkDlg(context);
}
}
/**
* 获取网络数据的方法
* @param path
*/
public static void getData(final String path, Context context, final JsonCallBack callBack){
//1.获取网络数据之前要判断网络的状态
if (NetWorkUtil.isConn(context)){
//可用就去获取数据...在这可以吐司
AsyncTask<Void, Void, String> asyncTask = new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... voids) {
try {
URL url = new URL(path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setReadTimeout(5000);
connection.setConnectTimeout(5000);
int responseCode = connection.getResponseCode();
if (responseCode == 200){
InputStream inputStream = connection.getInputStream();
String json = StringUtil.streamToString(inputStream,"utf-8");
return json;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String s) {
//以前我们做的操作是直接解析....现在在工具类里面通过接口回调的形式,把json格式的数据传递给具体调用这个方法的那个类
callBack.getJson(s);
}
};
//执行
asyncTask.execute();
}else {
NetWorkUtil.showNoNetWorkDlg(context);
}
}
}
============================接口=====================================
public interface JsonCallBack {
public void getJson(String json);
}
阅读全文
0 0
- 网络数据获取的封装
- 获取网络数据的封装
- 网络连接的判断的封装与 网络获取数据 的封装
- 网络连接的判断与封装以及网络获取数据的封装
- 封装传值的接口与获取网络数据
- 获取网络判断和数据进行封装
- 一个从网络获取数据的封装类,以及接口回调
- OkHttp网络请求数据的封装
- 从mysql获取数据方法的封装
- python suds 获取webService封装的数据
- tableView的网络数据获取
- json封装,获取数据
- 获取数据封装
- 网络请求数据工具封装
- Android自定义网络数据加载等待框的简单封装
- 获取网络上的json数据
- Android中网络获取数据的方法
- 简单的获取网络数据 测试使用
- Andrew Ng机器学习笔记week1 线性回归
- Oracle11g64位配置PL/SQL Developer常见问题解决
- Spring Cloud自定义引导属性源
- iOS开发:拖入文件到项目中,运行程序的时候却提示找不到该文件
- 外部如何调用到ajax返回值?
- 获取网络数据的封装
- Nginx跳转的配置实例
- ETL工具LucaNet读取子级科目
- @Resource、@Resources源码翻译
- linux命令大全
- 熵学习笔记
- Ubuntu 终端下路径太长修改办法
- R高效开发:Microsoft R Open(MRO)
- ITK数据表达