我有一個應用程序編寫在Monotouch
中,它提供的一個功能是拍攝照片,然後將其同步回服務器上的Sybase Sql Anywhere
數據庫。此機制在我們的應用程序的Windows
版本上正常工作,但在iOS
上,我們遇到了有關將照片保存在iPad或iPhone上的Sybase Ultralite
數據庫中的技術問題。簡而言之,如果我們在iPhone上將分辨率設置爲非常低,則照片可以正確保存,但如果分辨率較高,則會失敗。該問題與正在保存的圖像數據的大小有關。在iPad
上,照片通常大於iPhone
拍攝的照片,因此在iPad
上保存到數據庫的失敗次數比iPhone
更多。使用iOS存儲和同步圖像
無論如何,這只是我們的情況的一些背景和實際Ultralite
問題不是這個問題的重點。我在這裏尋找的是替代解決方案(Objective-C
或Monotouch
)提供此功能。我立即考慮保存到本地數據庫,然後將照片數據複製回服務器,因爲我有很多數據庫複製的經驗。但也許有更好的方法來解決這個問題?
該解決方案必須允許應用程序:
- 保存照片,以便它
- 必須允許照片(即使該設備的應用程序或重啓關機後)在本地可用拍攝並保存離線,因爲互聯網連接並不總是可用的。
- 將圖像數據同步回服務器數據庫,或將URL同步回到後臺的應用程序可以檢索照片。很顯然,在同步時,應用程序必須在線。
任何人都可以提出解決方案或API的,可以讓我提供這個功能,而不必同步圖像數據?我正在考慮將圖像保存到雲端,然後只同步一個可在後臺使用的URL來檢索照片。有什麼建議麼?
嗨尤金。感謝您的回答。是的,你是對的,如果使用CoreData存儲圖像然後再同步數據,那麼當照片拍攝時應用程序處於離線狀態這一事實是無關緊要的。我在考慮保存在雲中,這樣數據就不需要同步,但是應用程序的離線性使得這個選項不切實際。我之前使用過ASIHTTPRequest,並且必須同意使用它非常簡單。感謝您對此的建議。 – BruceHill 2012-08-02 08:09:35