2012-06-21 33 views
1

我有一類擴展應用程序類。現在,在應用程序的某個地方一些靜態變量,如果碰撞發生,那麼這些正在成爲空爲什麼它是如此。靜態變量爲空時,應用程序崩潰,

我可以明確地說喜歡,我聲明在應用程序子類這兩個變量,並在發生碰撞這些成爲null.my應用要求登錄只有這兩個應該初始化後,其他的Java類初始化。

對於任何答案/建議在此先感謝

回答

1

靜態變量與一個類相關聯,只要該類在內存中,它們就會存活(一旦應用程序終止或類被卸載後,它將不復存在,請參閱this以獲取更多信息)。因此,當您的應用程序崩潰時,您的靜態變量將不復存在,並再次將其值設爲null

對於這些變量的持久值存儲,選擇SharedPreferences

瞭解更多關於SharedPreferences here。和example一起工作。

+0

謝謝,它的偉大工程! – user1108995

2

此行爲很正常。您的應用程序崩潰後,一切都「重新初始化」和你static變量來爲初始值,這我想是null

如果您希望在應用程序停止/重新啓動時保持變量(當Android決定停止應用程序時也會發生這種情況),您應該使用不同的存儲器,並且我建議您查看SharedPreferences

+0

感謝您的答覆的答覆 – user1108995

相關問題