當用戶手動殺死一個應用時,什麼數據被清除?當用戶殺死一個應用程序(android)時會清除什麼?
我有一些功能,只有正確清除應用程序殺死和重新打開的數據,所以很清楚系統正在清除一些我丟失的數據。
基本上,我想知道什麼樣的刪除/清除數據以編程方式被調用,以便我可以嘗試弄清楚在關閉/重新打開時保留的是什麼,不會停留在kill/reopen。
編輯:我基本上是試圖找出終點之間(),它包含一個網頁視圖並強制關閉的活性差異/重啓
當用戶手動殺死一個應用時,什麼數據被清除?當用戶殺死一個應用程序(android)時會清除什麼?
我有一些功能,只有正確清除應用程序殺死和重新打開的數據,所以很清楚系統正在清除一些我丟失的數據。
基本上,我想知道什麼樣的刪除/清除數據以編程方式被調用,以便我可以嘗試弄清楚在關閉/重新打開時保留的是什麼,不會停留在kill/reopen。
編輯:我基本上是試圖找出終點之間(),它包含一個網頁視圖並強制關閉的活性差異/重啓
當你強制關閉,應用程序將完全從內存中刪除。例如,所有的服務將被關閉,你可能持有的任何靜態變量,一切都將被清除。但是,持久存儲(如SharedPreferences)不會受到影響。在應用程序關閉前的每個值都將保持原樣。
另外,您不能期望在強制關閉時調用生命週期方法。因此,如果您在服務或活動的onDestroy中執行任何操作,那麼很可能會失敗,因爲該方法從未被調用過。
你是什麼意思殺人?從應用程序菜單強制關閉? –
沒有持久存儲的清理,也沒有機會讓你的代碼去做 - 死了已經死了。因此,封閉清理的設計思想基本上已經打破,需要更換。如果在下一次運行中清理是不可接受的,那麼您不應該首先在持久性存儲上傳播內容。 –
@ShivamVerma是的,強迫關閉。 – user3829740