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