2016-05-15 3 views
2

Я пытаюсь перенести свой проект андроида в Котлин, но столкнулся с проблемой с retrofit2.Callback. Даже если я импортирую этот интерфейс, я продолжаю получать ошибку Unresolved reference: Callback.нерешённая ссылка: Обратный звонок

Почему это могло произойти и как я мог его исправить?

+2

Пожалуйста, добавьте полное описание ошибки, включая соответствующий фрагмент кода. – miensol

+0

Попробуйте создать конкретную реализацию интерфейса retrofit2.Callback и использовать один: класса MyCallback2: Ответный { переопределение прикольных OnFailure (вызов: Вызов , т:? Throwable) { бросок UnsupportedOperationException() } переопределить прикольных onResponse (вызов: Call , ответ:? ответ ) { бросок UnsupportedOperationException() }} – cVoronin

+1

Или вы можете сделать так: call.enqueue (объект: retrofit2.Callback {...}) – cVoronin

ответ

1

Расширяя @ ответ cVoronin в:

call.enqueue(object : Callback<String> { 
    override fun onFailure(call: Call<String>, t: Throwable?) { 
     // TODO implement me 
    } 

    override fun onResponse(call: Call<String>, response: Response<String>) { 
     // TODO implement me 
    } 
}) 

Примечание на response из Retrofit2 documentation:

Ответ в HTTP еще может указывать на сбой на уровне приложений, таких как 404 или 500 вызовов Ответ .isSuccessful(), чтобы определить, указывает ли ответ на успех.

+0

, пожалуйста, я сделал, что получил ту же ошибку, пожалуйста, как я могу ее исправить. Вот полная ссылка на вопрос, который я получил: https: //stackoverflow.com/questions/49040797/kotlin-retrofit2-how-to-convert-enqueue-and-callback-from-java-to-kotlin –

Смежные вопросы