Puede actualizar con OKHttp usar datos de caché cuando está desconectado

Estoy tratando de usar Retrofit y OKHttp para almacenar en caché las respuestas HTTP. Seguíesta esencia y terminó con este código:

File httpCacheDirectory = new File(context.getCacheDir(), "responses");

HttpResponseCache httpResponseCache = null;
try {
     httpResponseCache = new HttpResponseCache(httpCacheDirectory, 10 * 1024 * 1024);
} catch (IOException e) {
     Log.e("Retrofit", "Could not create http cache", e);
}

OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.setResponseCache(httpResponseCache);

api = new RestAdapter.Builder()
          .setEndpoint(API_URL)
          .setLogLevel(RestAdapter.LogLevel.FULL)
          .setClient(new OkClient(okHttpClient))
          .build()
          .create(MyApi.class);

Y este es MyApi con los encabezados Cache-Control

public interface MyApi {
   @Headers("Cache-Control: public, max-age=640000, s-maxage=640000 , max-stale=2419200")
   @GET("/api/v1/person/1/")
   void requestPerson(
           Callback<Person> callback
   );

Primero solicito en línea y verifico los archivos de caché. La respuesta correcta JSON y los encabezados están ahí. Pero cuando trato de solicitar sin conexión, siempre obtengoRetrofitError UnknownHostException. ¿Hay algo más que deba hacer para que Retrofit lea la respuesta del caché?

EDITAR: Desde OKHttp 2.0.xHttpResponseCache esCache, setResponseCache essetCache

Respuestas a la pregunta(6)

Su respuesta a la pregunta