2010-04-20 60 views
0

Android中的日曆應用程序是否維護其數據庫的緩存? 每當我通過日曆應用程序編輯和標記某些事件時,它都存儲在數據庫中,但如果我從某些外部源編輯calendar.db,則所做的更改不會反映在日曆應用程序中。所以我的問題是:在Android 2.1中的日曆應用程序中存儲事件

  • 日曆應用程序是否維護緩存或其他形式的數據庫?
  • 如果是,那麼在哪裏以及如何?
+0

供參考:這裏的標籤應該是:日曆和機器人,而不是你在這裏完成的方式。 – 2010-05-14 19:54:01

回答

0

日曆應用程序保留它在內存中顯示的值是非常合理的。這可能是因爲如果你來回追蹤 - 足夠遠 - 那麼它會忘記一些價值,然後當你再次返回時,它會從外部編輯的數據庫中提取價值。但是,如果在拋棄內存中的值之前刷新內存中修改的值,則會在繼續之前覆蓋外部編輯的值。 (我不相信只有在需要放棄內存值時纔會寫入內存中的值;我希望它會在編輯值後馬上合理地將值寫入數據庫 - 就像保存日曆條目一樣。 )

另一方面,它可能完全不同於此。

0

有一件事我能想到的,是使用權限,允許訪問手機的日曆在外部應用程序(非日曆應用程序),並且該權限是:

WRITE_CALENDAR

同樣,如果你嘗試從同一個外部應用程序讀取,你可能沒有相關的讀取權限得到壞值(或空值):

功能(6)

但是,如果它是一個自制日曆,寵物項目或其他,你需要t o確保正在使用的數據庫也允許其他用戶寫信給它,因爲我現在不記得如何做到這一點。

就緩存而言,手機不應該緩存大量的數據庫信息,尤其是因爲它的SQLite。理論上,緩存會保存臨時數據或常用數據(如索引),但它不會從數據庫本身存儲元組,並且修改緩存將無論如何都要求將更改提交到數據庫。雖然這可能我完全錯了。

相關問題