2012-04-18 47 views
0

在我的應用程序的Android應用程序的GridView,我加載使用遠程JSON文件一個GridView的內容。但是那個JSON在一個月內更新一次。所以用戶每次加載GridView時都不需要連接互聯網。所以我所做的就是,首次將數據存儲到數據庫中,並且下次使用數據庫填充GridView時。更新時,新的項目加入到JSON

現在我有一個問題。我想發送一個通知或類似的東西,當一個新項目添加到JSON文件。 沒有使用C2DM,有沒有其他辦法可以實現我的目標?

我覺得這樣的事情,我們得到當應用程序的新版本可用的通知。如果適用,我該怎麼做?

+0

我可以使用Java ** ** HttpHeaders類的Android? [鏈接] (http://javadoc.google-api-java-client.googlecode.com/hg/1.0.10-alpha/index.html?com/google/api/client/http/HttpHeaders.html) 我認爲這會解決我的問題。 – AnujAroshA 2012-04-18 10:49:45

回答

0

如果您不想將數據推到你的應用程序的其他顯而易見的方法是在固定的時間間隔輪詢。服務可以在後臺執行此操作。一旦服務器正確回覆,您可以顯示通知。

+0

請參閱我的評論並給出建議。謝謝 – AnujAroshA 2012-04-18 10:51:15

+0

對不起,但我不太明白HttpHeaders類將如何解決您的問題。你能更精確一點嗎? – Ika 2012-04-19 08:42:19

+0

我的意思是,你可以有一個服務,將安排一個鬧鐘,每N分鐘(或你的情況下的天)輪詢數據。每次警報響起時,都會產生一個線程,以執行聯網工作以及(如果需要)數據庫更新以及用戶通知。 – Ika 2012-04-19 08:49:14

0

我已經找到了相同的問題不同的方法。這裏我們不需要使用推送通知或C2DM。通過使用HttpUrlConnection類和getLastModified()方法,我們可以實現我們的目標。

邏輯是,我們將文件的最近更新時間保存在我們的SharedPreferences下一次我們加載應用程序時,SharedPreferences值和最後一次更新日期的值是相同的,我們可以加載緩存數據或數據我們保存在我們的數據庫中。如果這些值不同,那麼只有我們從服務器上下載數據。

相關問題