Autore Topic: Picasso offline e custo . interceptor  (Letto 382 volte)

Offline giuseppesorce

  • Utente junior
  • **
  • Post: 92
  • Respect: +6
    • Google+
    • warpmobile_it
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6,Nexus 5,Nexus 4, Galaxy Nexus, Nexus s, Nexus One,Htc Wildfire S, Nexus 7... etc
  • Sistema operativo:
    Ubuntu 14.04
Picasso offline e custo . interceptor
« il: 19 Maggio 2017, 09:21:19 CEST »
0
Salve ogni tanto vengo a fare visita :)

Ho un problema con Picasso e un custom interceptor.

Se uso Picasso normalmente il comportamento è normale (scusate il giro di parole) cioè carico l' immagine e se chiudo e riapro l' app in offline.. visualizzo l' immagine.

Se invece uso un custom interceptor.. carico l' immagine solo quando sono online.
Ecco un po di codice
Codice (Java): [Seleziona]
Cache cache = new Cache(new File(getCacheDir() + "/images"),
                80 * 1024 * 1024);
        OkHttpClient defaultHttpClient = new OkHttpClient.Builder()
                .addNetworkInterceptor(
                        new Interceptor() {
                            @Override
                            public Response intercept(Interceptor.Chain chain) throws IOException {
                                Request request = chain.request().newBuilder().
                                        addHeader("X-SID", "11803b3b0da4046e20e0762b5bf8aaf9").
                                        addHeader("X-TOKEN", "40835992aaaa32ffea76bb").build();
                                return chain.proceed(request);
                            }
                        }).cache(cache).build();
        Picasso picasso = new Picasso.Builder(this).downloader(new OkHttp3Downloader(defaultHttpClient)).build();
        picasso.load("http://api.camazing.com/rest/photos/57/imgdata").into(ivDemo);

The code is joy and passion but it has a high degree of suffering

Offline Ohmnibus

  • Utente senior
  • ****
  • Post: 763
  • Respect: +159
    • Github
    • Google+
    • @ohmnibus
    • Mostra profilo
    • Lords of Knowledge GdR
  • Dispositivo Android:
    Huawei P9 Lite
  • Play Store ID:
    Ohmnibus
  • Sistema operativo:
    Windows 7 x64
Re:Picasso offline e custo . interceptor
« Risposta #1 il: 19 Maggio 2017, 11:19:12 CEST »
0

Se al posto del tuo usi un interceptor che non fa nulla (return chain.proceed(chain.request());) che succede?
Ohmnibus
Le mie app su Play Store

È stata trovata una soluzione al tuo problema? Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato.

Offline giuseppesorce

  • Utente junior
  • **
  • Post: 92
  • Respect: +6
    • Google+
    • warpmobile_it
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6,Nexus 5,Nexus 4, Galaxy Nexus, Nexus s, Nexus One,Htc Wildfire S, Nexus 7... etc
  • Sistema operativo:
    Ubuntu 14.04
Re:Picasso offline e custo . interceptor
« Risposta #2 il: 19 Maggio 2017, 11:27:40 CEST »
0
Non posso caricare l' immagine del sito.. ma provo con un' altra immagine..

Grazie dell' idea magari riesco a capire se è un problema del server o di Picasso

Post unito: 19 Maggio 2017, 12:37:57 CEST
ciao dopo 2-3 orette di stattimento il problema era server.

Le immagini che inviava il server avevano degli header sbagliati. Inviava cosi:

Cache-Control →must-revalidate

Invece deve essere:

Cache-Control →public, max-age=604800

« Ultima modifica: 19 Maggio 2017, 12:37:57 CEST da giuseppesorce, Reason: Merged DoublePost »
The code is joy and passion but it has a high degree of suffering