Я думал, что эти последние версии должны быть совместимы. Это твит; https://twitter.com/JakeWharton/status/553066921675857922 и в перечне изменений в версии 1.9 упоминается об этом.Модернизация 1.9 с помощью OkHttp 2.2 и перехватчиков
Однако, когда я пытаюсь это:
OkHttpClient httpClient = new OkHttpClient();
httpClient.interceptors().add(new TokenExpiredInterceptor());
mRestAdapter = new RestAdapter.Builder()
.setEndpoint(API_ENDPOINT)
.setClient(httpClient)
.setLogLevel(BuildConfig.DEBUG ?
RestAdapter.LogLevel.FULL :
RestAdapter.LogLevel.NONE)
.setRequestInterceptor(new AuthorizationInterceptor())
.build();
Он по-прежнему не работает. Метод setClient жалуется на несовместимый объект Client;
Error:(29, 21) error: no suitable method found for setClient(OkHttpClient)
method Builder.setClient(Client) is not applicable
(argument mismatch; OkHttpClient cannot be converted to Client)
method Builder.setClient(Provider) is not applicable
(argument mismatch; OkHttpClient cannot be converted to Provider)
Что мне не хватает? Я также вижу, что OkHttpClient не реализует клиентский интерфейс.
Я использую этот подход на данный момент; https://medium.com/@nullthemall/execute-retrofit-requests-directly-on-okhttp-2-2-7e919d87b64e
Я неправильно истолковал журнал изменений? Maye Retrofit 1.9 может использовать OkHttpClient 2.2, когда он находится в пути к классам, но интерфейс еще не адаптирован?
Спасибо! Не могу поверить, я пропустил это: p – dzan
@UsmanAfzal Это не связано с вопросом, вы должны искать, если у кого-то есть эта проблема до или задать свой вопрос. –