java - 如何为 OkHttpClient 设置超时?

标签 java android okhttp

<分区>

我正在使用 android 4.4.2 在物理设备上测试原生 android 项目 (Java)。我的 OkHttpClient websocket 连接但在 10 秒后超时,这就是我试图用来更改超时设置的内容。

OkHttpClient client = new OkHttpClient();
client.setReadTimeout(0, TimeUnit.MILLISECONDS);

但它说 无法解析方法 setReadTimeout(int, java.util.concurrent.TimeUnit)

这些是我的进口:

import android.util.Log;

import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import okhttp3.ResponseBody;
import okhttp3.ws.WebSocket;
import okhttp3.ws.WebSocketCall;
import okhttp3.ws.WebSocketListener;
import okio.Buffer;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.io.IOException;
import java.util.*;
import java.util.concurrent.TimeUnit;

在我的 gradle 文件中,我有 compile 'com.squareup.okhttp3:okhttp-ws:3.4.1'

最佳答案

你试过builder吗?

OkHttpClient client = new OkHttpClient.Builder()
    .connectTimeout(10, TimeUnit.SECONDS)
    .writeTimeout(10, TimeUnit.SECONDS)
    .readTimeout(30, TimeUnit.SECONDS)
    .build();

更新

尝试编译 compile 'com.squareup.okhttp3:okhttp:3.4.1'

关于java - 如何为 OkHttpClient 设置超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39295770/

相关文章:

java - 添加参数 do 方法后应用程序崩溃

Android:从数组中添加/调用值

android - okHttp3 java.lang.NoSuchMethodError : No virtual method setCallWebSocket 错误

Android OKHTTP 发布请求

java - ArrayList 元素不被打印

java - 如何修复 hibernate 上的 JndiException?

java - 什么是 NullPointerException,我该如何解决?

java - 使用Java数组的热图图像

android - WebView LoadUrl() 在后台使用 asynctask -

java - 从 GitHub 获取 OAuth 访问 token 时出现 Cookie 错误