2016-01-21 51 views
3

我在我的Android應用程序中使用排球庫下載圖像,我有幾件事情可以澄清這個庫。如何排列從服務器獲取更新的圖像

  1. 圖書館如何反映在服務器端更新的同一圖片URL上的更新圖片,圖書館會自動照顧?它是如何工作的 ?
  2. 如果圖書館設有這個,我必須參考哪個類文件來查看要理解的功能。
  3. 如果圖書館沒有這個設施,那麼需要做什麼才能在應用程序端獲得更新的圖像。

我希望我很快會收到答覆。

回答

1

我不認爲Volley提供了在服務器端更新時使用的任何回調。 Volley是用於將數據發送到服務器的聯網api。

對於接收更新,您必須實現Push Messaging功能。在服務器端進行更新時,服務器將嚮應用程序發送推送消息,然後應用程序將收到通知並執行其操作。

1

Volley維護本地緩存並使用HTTP方法知道是否以及何時需要重新加載映像。

這是基於像Cache-Control頭,Expires(知道什麼時候檢查新版本)和ETag使conditionnal查詢(這是對客戶說「我已經有版本XXX給我的一種方式只有當它是不一樣的「內容)

因此,服務器不更新,但它控制客戶端將如何檢查更新的頻率。

有關Volley如何處理HTTP標頭的更多詳細信息,請參閱HttpHeaderParser

+0

這對我意味着什麼,凌空控制緩存設置爲在時間到期,所以然後它重新打電話給服務器,是不是? – chethan

+0

是的,服務器給出了有效期限:每次下載圖像時,服務員都可以添加一個標題,表示「此圖像有效2小時」。很明顯,它只適用於服務器處理緩存控制和/或ETags – bwt

+0

非常感謝,你說得很清楚,我不知道它的工作方式。還有一件事要問你,這個緩存控制器標籤是否會在所有修改過的調用(url)上自動設置,比方說,我已經給服務器上傳了一個新圖像,並且圖像的名稱與之前相同。在將其放入服務器之後,此圖像的相應調用是否會在沒有任何干預的情況下使用緩存控件標記進行更新,或者是否有任何機構處理它? – chethan