首页 > 其他分享 >OkHttp的使用

OkHttp的使用

时间:2022-09-06 11:55:46浏览次数:77  
标签:com void okhttp3 使用 OkHttp new HttpUtil public

build.gradle中引用如下代码

dependencies {
   // define a BOM and its version
   implementation(platform("com.squareup.okhttp3:okhttp-bom:4.10.0"))

   // define any required OkHttp artifacts without version
   implementation("com.squareup.okhttp3:okhttp")
   implementation("com.squareup.okhttp3:logging-interceptor")
}

AndroidManifestApplication 节点中添加

android:usesCleartextTraffic="true"

AndroidManifest中添加网络请求

<uses-permission android:name="android.permission.INTERNET" /> 
<!-- 检查网络可用性 -->

创建HttpUtil.java

package com.example.myapplication;
//引包
import okhttp3.OkHttpClient;
import okhttp3.Request;
//http工具类封装
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);
    }
}

异步调用HttpUtil获取网络信息

HttpUtil.sendOkHttpRequest(url, new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                e.printStackTrace();
                //线程回到主线程,否则系统交出现错调
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        Log.d("Web","Fail");
                    }
                });
            }
            @Override
            public void onResponse(Call call, Response response) throws IOException {
                String responseText = response.body().string();
                //线程回到主线程,否则系统交出现错调
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        
                    }

                });
            }
        });

标签:com,void,okhttp3,使用,OkHttp,new,HttpUtil,public
From: https://www.cnblogs.com/MarkDespite/p/16661256.html

相关文章

  • CMake(六):使用子目录
    对于简单的项目,将所有内容保存在一个目录中是可以的,但是大多数实际项目倾向于将它们的文件分割到多个目录中。通常可以找到不同的文件类型或分组在各自的目录下的独立模......
  • 使用vue-cli3离线创建项目
    第一步:下载vue-templates/webpack 地址https://github.com/vuejs-templates/webpack 第二步:将下载包解压到本地用户目录下的.vue-templates目录下并将webpack-devel......
  • Binding的使用
    在build.gradle中加入android{ viewBinding{enabled=true}}在对应Activity如下定义(e.g.MainActivity)privateActivityMainBindingbinding......
  • 使用支持向量机识别手写数字。
    使用支持向量机识别手写数字。根据使用支持向量机识别手写数字的问题,一些科学家声称它可以准确地预测95%的时间。我必须进行数据分析才能接受或拒绝这个假设。我已经做......
  • 2022 年最适合游戏开发者使用的 10 个 Python 框架
    2022年最适合游戏开发者使用的10个Python框架供游戏开发人员立即使用的Python框架随着游戏编程语言的集成,游戏业务在最新的技术市场中蓬勃发展。在游戏创作者的编......
  • 使用人工智能助手控制音频播放
    使用人工智能助手控制音频播放了解如何使用HoundifyAPI按“暂停”imagebyauthor欢迎回到本系列的第三部分!首先,我们设置我们的初始应用程序。接下来,在上一篇文章中......
  • 使用 React 样式的组件设置容器样式
    使用React样式的组件设置容器样式首先,呼救声。您是否曾经尝试在两个类似的项目中使用相同的代码,并且在一个工作而一个没有工作时感到困惑?如果没有,我希望你晚上睡个好觉......
  • 解决python使用过程出现的问题
    关于报错“AttributeError:partiallyinitializedmodule‘requests‘hasnoattribute‘get‘的解决方法报错:AttributeError:partiallyinitializedmodule‘requests......
  • 声明式HTTP客户端-Feign 使用入门详解
    什么是OpenFeignOpenFeign(以下统一简称为Feign)是Netflix开源的声明式HTTP客户端,集成了Ribbon的负载均衡、轮询算法和RestTemplate的HTTP调用等特性,并对其......
  • 你需要了解多少 Javascript 才能开始使用 React?
    你需要了解多少Javascript才能开始使用React?1.Javascript基础一个。使用var、let和const进行变量声明湾。算术、比较、逻辑运算符C。条件块和循环:if、for、f......