2016-09-02 2 views
4

Я работаю над собственным проектом Android (Java) на физическом устройстве с Android 4.4.2. Мой веб-сайт OkHttpClient подключается, но время истекает через 10 секунд, это то, что я пытаюсь использовать для изменения тайм-аута.Как установить тайм-аут для OkHttpClient?

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

но это говорит Cannot resolve method 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'

ответ

12

вы пытались с застройщиком?

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

UPDATE

попробовать скомпилировать compile 'com.squareup.okhttp3:okhttp:3.4.1'

+0

Я просто попробовал их, то же самое, 'Не удается разрешить метод ...' – CookieMonster

+0

@CookieMonster попробовать обновленный ответ – AmirG

+0

я добавил, что к моему Gradle сохраняя мой старый, и он ничего не меняет. Я попытался удалить свой оригинальный и сохранить ваш, но мне нужен мой оригинал для более поздних частей, где я использую 'WebSocketCall ws = WebSocketCall.create (...' – CookieMonster