2015-06-25 93 views
1

我有一個麪包屑式導航應用程序。每個級別都有自己的數據(如,名稱,ID等)。靜態隊列vs共享首選項

我目前有一個自定義活動,它擴展了android活動,負責照顧導航方面。它使用一個包含每個級別的隊列以及上面提到的數據。此隊列是靜態的(在自定義活動類中),用於確定用戶所在的級別併爲其下的所有級別提供數據。

這是不好的做法?我應該使用共享首選項嗎?

感謝您的任何建議。

+0

你能發佈與隊列相關的代碼嗎?如果'SharedPreferences'會更好,則會更容易判斷。 –

+0

而不是有一個全局隊列,爲什麼不通過一個Bundle將相關級別的數據傳遞給每個活動? – loadedion

回答

2

好的。因此,您的靜態隊列的範圍將是您的應用程序在內存空間中的範圍。並且SharedPreference將一直提供到設備上的應用範圍(直到用戶從設備上卸載)。

因此,如果您的應用程序不再運行,那麼您可能會失去導航軌跡。但是,如果它在SharedPreference中可用,那麼您可以隨時恢復您的應用程序的狀態。

+0

在這種情況下,隊列超出內存範圍是可以的,因爲當用戶以任何方式返回並在導航樹的根目錄重新啓動時,應用程序的安全性需要一個引腳。功能方面,它完美地符合我的目的。 我最關心的是這是否是不好的做法。在活動之間共享靜態指南時,我找不到許多資源。 – whoknows

+0

那麼你很好,如果它適合你的目的,SharedPreference只是與你的應用程序生活範圍和雅客在輕量級形式的數據。 – user370305