okhttp application level OkHttpClient instance(Okhttp应用程序级OkHttpClient实例)
本文介绍了Okhttp应用程序级OkHttpClient实例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想知道,如果我创建一个OkHttpClient实例来为我的"整个Android应用程序"服务,是否会有任何性能瓶颈或问题。也就是说,在我的应用程序类中,我创建了一个静态公共变量,该变量将包含OkHttpClient的一个实例,每当我需要做一个http请求时,我基本上都会构建一个请求对象,然后使用创建的okHtpClient实例来激发请求。
代码如下
public class MyApplication extends Application {
public static OkHttpClient httpClient;
@Override
public void onCreate() {
super.onCreate();
httpClient = new OkHttpClient();
}
}
// Making request 1
Request request1 = new Request.Builder().url(ENDPOINT).build();
Response response = MyApplication.httpClient.newCall(request1).execute();
// Making request 2
Request request2 = new Request.Builder().url(ENDPOINT).build();
Response response = MyApplication.httpClient.newCall(request2).execute();
推荐答案
使用单实例不是问题,而是一种常见的做法。您可以查看github中的类似应用,该应用使用匕首创建OkHttpClient单例,并将其注入其他模块。
您可以看到in this discussion JakeWharton也建议使用这种用法。
但最好使用Singleton模式进行此操作。
这篇关于Okhttp应用程序级OkHttpClient实例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:Okhttp应用程序级OkHttpClient实例


基础教程推荐
猜你喜欢
- Spring AOP错误无法懒惰地为此建议构建thisJoinPoin 2022-09-13
- 问题http://apache.org/xml/features/xinclude测试日志4j 2 2022-01-01
- 修改 void 函数的输入参数,然后读取 2022-01-01
- REST Web 服务返回 415 - 不支持的媒体类型 2022-01-01
- 使用堆栈算法进行括号/括号匹配 2022-01-01
- 无法复制:“比较方法违反了它的一般约定!" 2022-01-01
- 如何对 Java Hashmap 中的值求和 2022-01-01
- RabbitMQ:消息保持“未确认"; 2022-01-01
- 存储 20 位数字的数据类型 2022-01-01
- Struts2 URL 无法访问 2022-01-01