Application 是一個app運行中生命週期最長的,有時我們需要一些全局的變量使用,可以定義在自定義的application中,application爲單例模式,使得全局都可以使用,但定義在application中同樣可能出現異常:
App切換到後臺後,一段時間不操作,再切回來,很容易就發生崩潰(配置低的手機這種問題出現更頻繁)。這就是因爲把對象存儲在Application裏面,而App切換到後臺後,進程很容易就被系統回收了,下次切換回來的時候App頁面再重建,此時application中定義的變量就是空,如何解決?
1.首先保證我們在application中定義的變量在application的oncreate時進行初始化
2.初始化的數據的獲取我們可以通過SharePreferences進行處理
3.當退出程序時需要將存儲的數據進行置空處理
參考:
https://blog.csdn.net/zivensonice/article/details/51451486
https://www.jianshu.com/p/e28e50196800
https://www.cnblogs.com/whongs/p/6794508.html
https://blog.csdn.net/qq_32760901/article/details/94569273