zoukankan      html  css  js  c++  java
  • OkHttp的简单使用方法

    新建类HttpUtil,可以避免在多个界面需要使用网络请求是代码的重复

    package com.example.networktest;
    
    import okhttp3.OkHttpClient;
    import okhttp3.Request;
    
    /**
     * Created by lenovo on 2019/3/19.
     */
    
    public class HttpUtil {
        public static void sendOkHttpRequest(String address,okhttp3.Callback callback){
            OkHttpClient client=new OkHttpClient();
            Request request=new Request.Builder().url(address).build();
            client.newCall(request).enqueue(callback);//内部自动打开了线程
        }

    Mian.java中点击事件代码

        public void onClick(View v){
            if (v.getId()==R.id.button1){
               // sendRequestWithHttpURLConnection();
                // sendRequestWithOkHttp();
                HttpUtil.sendOkHttpRequest("https://www.qu.la/book/101104/5290362.html",new okhttp3.Callback(){
                    @Override
                    public void onResponse(Call call, Response response) throws IOException {
                        String responseData=response.body().string();//获取返回的值
                        showResponse(responseData);//自己写的方法
                    }
    
                    @Override
                    public void onFailure(Call call, IOException e) {
    
                    }
                });
            }
        }
      private  void showResponse(final  String response){
            runOnUiThread(new Runnable() {//由于子线程不准许操作UI所以使用runOnUiThread方法切换到主线程
                @Override
                public void run() {
                    text.setText(response);
                }
            });
        }
  • 相关阅读:
    正则表达式在NLP中应用
    spring boot中 异常:Error resolving template "xxx", template might not exist or might not be accessible...解决办法
    毕业设计6
    毕业设计5
    毕业设计4
    毕业设计3
    毕业设计2
    毕业设计1
    支付宝架构
    Javaee应用架构
  • 原文地址:https://www.cnblogs.com/837634902why/p/10557524.html
Copyright © 2011-2022 走看看