2013-07-03 13 views
5

C'è un modo per forzare l'aggiornamento di un'immagine che viene memorizzata nella cache per una scheda di contatto? Ho cambiato l'immagine che è ospitata sul servizio web ma la scheda di contatto su Glass non si sta aggiornando. Sono passati più giorni e più cicli di accensione dell'hardware, quindi mi chiedo se ci sia un comando che mi manca.Come aggiornare l'immagine sul mio contatto Glassware?

+0

Il vetro deve rispettare le direttive della cache specificate nella risposta HTTP che contiene l'immagine. Per quanto tempo dirigerai Glass a mettere in cache l'immagine? – mimming

risposta

2

Immagino che tu intenda il contatto per il tuo vetro, sono stato in grado di aggiornare quell'immagine e vedere quel cambiamento riflesso in Vetro in secondi.

Ho ricevuto aiuto dallo general glass documentation e dallo reference documentation per Contatti su vetro.

Entrambi sono utili ma pieni di trap, come il primo ha un esempio JSON che non è nemmeno valido JSON (mancano le virgole per separare gli elementi) usa il nome della variabile errato per l'immagine e manca il parametro gentile.

Ecco un buon esempio che ho usato per testare questo per voi:

curl -X POST -H "Authorization: Bearer ya29.YOUR_TOKEN" -H 
"Content-Type: application/json" 
--data @json-contact1.txt https://www.googleapis.com/mirror/v1/contacts 

Qualora il file txt è simile al seguente:

{ 
    "kind": "mirror#timelineItem", 
    "id": "harold", 
    "displayName": "Harold Penguin", 
    "imageUrls": [ "http://images3.wikia.nocookie.net/__cb20110713145426/penguindrum/images/6/66/Real_penguins.png" ], 
    "priority": 7 
} 

La http grezzo di questo comando si presenta così:

POST /mirror/v1/contacts HTTP/1.1 
User-Agent: curl/7.21.1 (i686-pc-mingw32) libcurl/7.21.1 OpenSSL/0.9.8r zlib/1.2.3 
Host: www.googleapis.com 
Accept: */* 
Authorization: Bearer ya29.AHES6ZSgwltGsN16ZTP1JkklDXhDzazoZWRZmaCBltqAK6DTcSqPhw 
Content-Type: application/json 
Content-Length: 194 

{ 
    "kind": "mirror#timelineItem", 
    "id": "harold", 
    "displayName": "Harold Penguin", 
    "imageUrls": [ "http://images3.wikia.nocookie.net/__cb20110713145426/penguindrum/images/6/66/Real_penguins.png" 
    ], 
    "priority": 7 
} 

Per confermare l'operazione ho inviato il contatto e sono entrato nella timeline di Glass, selezionato una foto e s eletto Condividi, e quindi scorrere i contatti fino a quando ho visto Harold Penguin, aveva la foto di sfondo dal comando Ricciolo. Poi ho modificato il file txt con un nuovo URL immagine, inviato nuovamente il comando Curl, ottenuto un'altra 200 risposta e ripetuto il processo di foto/condivisione in Glass, e questa volta lo sfondo per Harold Penguin era la nuova immagine. Durante tutto questo tempo il mio Glass è stato collegato al Wifi.

Senza vedere il tuo codice è difficile diagnosticare il tuo problema esatto, ma sperando che questo funzioni e avendo accesso a un esempio funzionante che puoi testare ti aiuterà a capirlo. Sebbene il mio Glassware sia scritto in Java, mi piace la semplicità di Curl per diagnosticare problemi come questo, funziona per me, forse lo farà per te.

Interessante domanda, grazie per questo.

Problemi correlati