Я новичок в Kotlin, и у меня есть doAsync с собственным обработчиком исключений:
doAsync(exceptionHander = {e -> handleException(e)}){
//rest call
}
private val handleException= {throwable : Throwable ->
if(throwable is HttpClientErrorException){
val response = JSONObject(throwable.responseBodyAsString)
Toast.makeText(this, response["message"].toString(), Toast.LENGTH_LONG).show()
}
}
Однако тост никогда не отображается. Как я могу показать это сообщение об исключении в тосте? Вызывается ли обработчик исключений в потоке пользовательского интерфейса?
Обновление:
Я тестировал следующим образом:
doAsync(exceptionHander = {e -> handleException(e)}){
throw HttpClientErrorException(HttpStatus.INTERNAL_SERVER_ERROR, "An error has occurred")
}
с тем же обработчиком ошибок, однако всплывающее уведомление не отображается.
HttpClientErrorException
? - person user2340612   schedule 06.03.2018