看板 AndroidDev 關於我們 聯絡資訊
請問一下各位 最近遇到一個很奇怪的問題 就是當app縮到背景一段時間以後 然後當我在按下app叫回前景的時候 會有某個值被清空 導致程式crash 我在nexus7上不常發生這種情況, 可是使用叫低階的手機時常常發生 請問一下各位有遇到過類似情況嗎 感謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.11.17.212
wuliou:NullPointerException? 被自動回收了嗎 10/18 15:03
zxc190:檢查一下onResume有沒有寫release之類的東西 10/18 15:19
Deltaguita:低階手機的記憶體比較少 有可能被GC掉了 10/18 16:15
henry4343:NullPointerException 好像又是被自動回收了 10/18 17:04
henry4343:有辦法防止這種現象嗎?onResume應該沒有問題 10/18 17:04
henry4343:因為不是每次都會變成null 是縮背景一段時間以後才會 10/18 17:04
ted66:會不會你一直讀取某些東西,所以其他東西被強迫放掉 10/18 17:05
henry4343:如果縮小以後在打開都沒有問題,不過大概過了五分鐘以後 10/18 17:05
ted66:像圖片可以設定如果要OOM就把前面的放掉 10/18 17:05
henry4343:在打開就會變成null 10/18 17:05
ted66:看LOG是哪個NULL 應該可以攔截到(或者你RESUME有讀取那些) 10/18 17:06
henry4343:請問可以把值設定成不自動回收之類的嗎 10/18 17:06
henry4343:我有攔截到哪個值變成null,但是我不知道該怎麼阻止他 10/18 17:06
Deltaguita:你google : savedInstanceState 應該對你有幫助 10/18 17:30
qweqweqweqwe:但android會只砍某個變數嗎?不會吧! 10/18 21:17
charlesdc:會從最吃資源砍起 :) 10/18 21:29
henry4343:因為我重新開啟app後,某個數值被清為null 10/18 22:37
henry4343:導致app crash,我不確定是只有一個還是其他也有.. Orz 10/18 22:38
sdyy:就log一個一個看吧 不過如果有照標準生命週期做事 10/18 23:57
sdyy:應該是不會發生這種事情 10/18 23:57
sdyy:確認onPause/onResume onStop/onStart onCreate/onDestory 10/18 23:58
sdyy:都有做到對應的動作 new/release reg/unreg等等 10/18 23:59
JtsYa:onSaveInstanceState 請善用parcelable 10/19 09:49
Fonger:可以存到preference 10/19 14:19
KeySabre:回收很合理 不然user的記憶體永遠不夠用 10/20 12:32
KeySabre:應該要自己處理onPause跟onRusume 10/20 12:33