2014-07-07 14 views
6

In base a questo post How should I handle "No internet connection" with Retrofit on Androidpersonalizzato Retrofit ErrorHandler dà UndeclaredThrowableException

ho fatto una consuetudine ErrorHandler

private static class CustomErrorHandler implements ErrorHandler { 

    @Override 
    public Throwable handleError(RetrofitError error) { 
     if (error.isNetworkError()) { 
      return new MyNetworkError(); 
     } 

     return error.getCause(); 
    } 
} 

e ora il mio crash dell'applicazione e ottengo questo:

java.lang.reflect.UndeclaredThrowableException 

C'è una certa configurazione necessario per l'adattatore? Utilizzando Retrofit 1.6.0 con OkHttp 2.0.0

Grazie.

risposta

12

Se si restituisce un'eccezione verificata è necessario dichiararla sull'interfaccia.

interface MyService { 
    Foo doFoo() throws MyNetworkError; 
}