我已經嘗試了幾種方法來查看是否需要僅在服務器更新時更新用戶的UITableView數據源。在過去的幾年中,我已經完成了這些場景:1:將一個單獨的.txt文件與一個字符作爲版本#然後通過代碼進行比較並下載新的.plist,然後將該.txt保存到用戶的NSDocumentDirectory中與.plist在將來再次比較,以及2:實際檢查服務器的文件修改日期,這更好,因爲沒有.txt文件與.plist一起下載(下載更好的東西越少)在我的服務器上檢查plist的新版本
但是,現在我想嘗試一種不同的方式來說明我在App Bundle中發佈.plist文件的事實。由於.plist文件創建日期總是晚於新用戶的服務器日期,因此它們不會獲得新的.plist文件,而應用程序的較早用戶將獲取新文件。當然,在第一次應用程序啓動時,我可以獲取服務器的修改日期並覆蓋應用程序,因爲我將它從主包複製到NSDocumentDirectory,但我不認爲我想要去那條路線,因爲我從來不喜歡檢查發射數量。
基本上,它需要繼續在網絡請求時間輕量級,並像我一樣可靠。我正在考慮在.plist中創建一個版本#鍵,並簡單地將它與本地.plist進行比較,但我非常懷疑這將會輕量級,因爲我必須先將整個.plist下載到NSDictionary中,然後才能比較關鍵值。
我真的很抱歉,這篇文章很長,感謝您的幫助!
使用散列 - md5或sha1/2/256 – Kevin
@Kevin請詳細說明還是您可以提供SO鏈接? – klcjr89
此外,如果它有任何關係或使用'NSData dataWithContentsOfUrl'這是一個沒有壞消息。 – klcjr89