我正在開發一個iOS應用程序,它會有許多圖像。這些圖像與Show對象和Band對象相關聯。我對iOS開發相當陌生圖像處理rails + iOS核心數據
在服務器上,節目和樂隊與一系列圖像相關聯。目前我用以下信息存儲圖像:
height:integer width:integer imageType:string imageData:binary
第一個問題是:應該有更多?
其次,我堅持使用核心數據顯示和樂隊對象。我不想堅持這些圖像,因爲我很快就會耗盡內存。我將它們存儲在緩存目錄中。我的第二個問題是:Show和Band對象應該如何跟蹤圖像?我應該在模型中有一個Image對象,並且與節目和樂隊有很多關係。但是這些Image對象可能只包含高度,寬度,圖像類型和緩存圖像的路徑。我的想法是,如果它在緩存目錄中找不到,它會從服務器獲取imageData。
這樣做的正確方法是什麼?
UPDATE
我還打算與查驗HEAD服務器,以檢查是否爲imageData已經越來越緩存版本之前更新。
感謝您的信息。我想過這樣做,但是,我的恐懼是我不想堅持這麼多的數據。我預計用戶將會通過一些樂隊和節目細讀,這會導致這些圖像的積累。如果我使用你的方法,你如何建議我處理太多數據的積累? – JonathanC
我不確定其他方法如何解決這個問題。無論哪種方式,圖像都得到保存並佔用內存。如果你想讓圖像可以在本地訪問,那麼沒有辦法解決這個問題。你可以創建一個臨時緩存,並且每次都掛在這些圖像上,而不需要保留它們,但是你必須每次都抓取它們。這可能是最好的解決方案,如果你希望有大量的圖像(如社交網絡應用程序) – Dima
我相信我描述的方法允許操作系統清除緩存,如果它有點沉重。我有足夠多的照片,我不想堅持他們。儘管如此,我還沒有足夠的理由每次加載它們。我期待有一些離線功能。 – JonathanC