我做了一個iPhone應用程序,顯示數據從一個網站的表視圖。基本上,我將網站的數據存儲在一個數組中,然後顯示在一張桌子上。現在我希望每當網站更新他們的數據時,用戶可以獲得數據更新的日期。任何人都可以通過不同的方式來做到這一點?我們可以讓用戶知道數據更新從互聯網與iPhone SDK的日期?
0
A
回答
1
那麼,您是否在手機上存儲(緩存)網站數據,並且只是稍後更新一次,或者是每次應用程序啓動時加載網站並填充表格?
如果您沒有存儲它(使用Core Data
,User Defaults
,NSKeyedArchiver
等),那麼您將如何判斷數據是否發生了變化?
在這種情況下(不存儲),您可以在從網站上提取數據後生成數據的哈希值並使用NSUserDefaults
以及NSDate
進行存儲。
下一次您從網站獲取信息時,您將再次生成哈希值並將其與以前的值進行比較。如果它們匹配,那麼內容不會更新,否則它會存儲新的哈希值和當前日期。
如果你有控制網站,你可以做幾件事情。
返回帶有信息的HTTP標頭什麼時候該網站最後一次更新,並將其與本地存儲的日期進行比較。這將允許您使用
HEAD
HTTP語義來檢查是否需要完整的GET
請求,以允許您儘量減少網絡訪問。實施推送通知(對您的情況看起來過度殺人),告訴用戶內容已更新。
祝你好運。
UPDATE
所以最好的辦法是打電話[myArray hash]
並將其存儲在NSUserDefaults的,例如
NSUInteger hashValue = [myArray hash];
NSDate *now = [NSDate now];
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[prefs setObject:hashValue forKey:@"hash"];
[prefs setObject:now forKey:@"date"]; // Maybe you have to convert the date to a string.
[prefs synchronize];
後來當應用程序啓動(或變爲有效)加載:
// Load the website again and generate the hash.
NSUInteger newHashValue = [myArray hash];
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
NSUInteger *oldHashValue = [prefs stringForKey:@"hash"];
NSDate *contentDate;
if (newHashValue == oldHashValue)
{
contentDate = [prefs dateForKey:@"date"];
}
else
{
contentDate = [NSDate now];
// Store the new date.
// and the new hash.
}
相關問題
- 1. iphone應用程序如何從互聯網更新他們的SQLite數據?
- 2. 我們怎麼知道iphone已經從互聯網上獲得信息?
- 3. 從互聯網更新textview
- 4. 更新系統時間和日期從互聯網
- 5. 我們可以從Android Facebook Sdk中獲取用戶的出生日期嗎?
- 6. 使用iPhone GPS無需互聯網更新用戶位置
- 7. 圖形excel數據與日期互聯網源的問題
- 8. 我們如何知道用戶提交日期的格式?
- 9. iPhone SDK互聯網連接檢測
- 10. 如何通過互聯網定期更新SQLlite數據庫?
- 11. 使用iphone的互聯網可達性
- 12. Android - 讓用戶連接到互聯網
- 13. 更新從互聯網的圖像
- 14. 無法讓我的網站可用於互聯網
- 15. iOS版 - 更新的UILabel文本定期與我們的用戶交互
- 16. Google Analytics如何知道我們正在使用哪個互聯網連接?
- 17. 從互聯網資源更新ContentProvider的基礎SQLite數據庫
- 18. 我可以讓PHP知道用戶沒有啓用javascript嗎?
- 19. 如何知道用戶是否連接到互聯網?
- 20. 我們如何知道我們的應用程序是否從iphone卸載?
- 21. 我們可以讓用戶控制本地通知嗎?
- 22. 我們可以通過ipohone sdk訪問iphone日曆嗎?
- 23. 以我的MAC都以太網和wifi都連接。如何知道我從哪裏接入互聯網
- 24. 沒有互聯網更新?
- 25. iPhone:如何在互聯網可達時與網絡服務同步數據?
- 26. iOS - 是否可以使用更新的xib從互聯網下載軟件包?
- 27. 我上傳我的網站到互聯網,但我不知道如何將數據庫附加到網站
- 28. iPhone - 應用程序崩潰與可憐的互聯網連接
- 29. 新Facebook IOS SDK?我們可以用新的sdk來使用舊的sdk嗎?
IM從網站加載數據每次應用程序啓動 – 2010-09-27 09:19:59
每次應用程序啓動網站的數據的時間存儲在一個陣列中然後在桌面上顯示 – 2010-09-27 09:21:12
如果您認爲它有用,接受的答案將非常感謝。 – 2010-09-27 19:40:18