2016-05-23 28 views
0

我需要一個OnSharedPreferenceChangeListener觀察我的應用程序的整個生活的偏好,無論是在後臺還是前臺。將在Application的onCreate上註冊並永遠不會註銷導致泄漏?OnSharedPreferenceChangeListener會泄漏嗎?

據我瞭解,我認爲不應該,因爲當應用程序對象從內存中撤出時應用程序進程佔用存在,所以我猜這個OnSharedPreferenceChangeListener也會被撤出。糾正我,如果我錯了...

+0

我不認爲這應該是一個問題,但我有興趣知道是否有更好的解決方案來解決您的問題。 – zgc7009

回答

0

這樣做是安全的,因爲沒有靜態的上下文。在您的應用程序被破壞後,您的OnSharedPreferenceChangeListener也會遭到破壞。內存泄漏只有在其中一個被定義爲static時纔會發生,只要您不這樣做,一切都可以。

+0

我不認爲靜態與此有關,如果應用程序進程死了,所有靜態對象在應用程序代碼AFAIK中定義... –