OKHttp访问网络

来源:互联网 发布:黑科技和人工智能 编辑:程序博客网 时间:2024/06/08 05:40

build.gradle文件设置

 compile 'com.squareup.okhttp3:okhttp:3.4.1'

判断获取数据的途径

 private String mResult; String cacheData=getDataFromLocal();        if (!TextUtils.isEmpty(cacheData)) {            mResult = cacheData;            System.out.println("从本地加载数据"+mResult);        }else {            mResult=getDataFromNet();            System.out.println("从网络获取数据" );        }        tv.setText(mResult);//装载数据

从网络获取数据

OkHttpClient client = new OkHttpClient();String url = "http://www.oschina.net";//构建一个请求Request request = new Request.Builder().url(url).build();//请求执行Response response = client.newCall(request).execute();String result = response.body().string();

把数据缓存到本地

File file=new File(getCacheDir(),"/xxx");//读文件BufferedWriter writer=null;writer= new BufferedWriter(new FileWriter(file));writer.write(result);

从本地读取数据

File file = new File(getCacheDir(),"/xxx");if (file.exists()) {    BufferedReader reader =null;    reader=new BufferedReader(new FileReader(file));    String tempLine = null;    StringBuffer sb = new StringBuffer();    while ((tempLine = reader.readLine()) != null) {    sb.append(tempLine);    }    return sb.tostring;}   
0 0
原创粉丝点击