[問題] service中的static object

看板AndroidDev作者 (Xen)時間11年前 (2012/12/18 22:44), 編輯推噓3(309)
留言12則, 4人參與, 最新討論串1/1
最近在做一個類似IM的東西 service裡面有個叫userinfo的static object 只有紀錄account session等等東西 需要維持他一直在記憶體裡面 我已經讓service以foreground的方式啟動了 但是我發現手機放一陣子後userinfo還是會不見 (所謂的不見就是要去抓東西都抓到空字串 估計singleton被recreate了) 但是我看service的foreground notification圖示還在 應該是沒有被刪掉才對 何況static object應該不會被gc 請問是有什麼可能導致這種情形呢? 先謝過各位前輩 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.169.156.204

12/18 23:10, , 1F
logcat看是否重新onCreate。可考慮sharedpreferences,
12/18 23:10, 1F

12/18 23:10, , 2F
我想userinfo應該不常變動?
12/18 23:10, 2F

12/18 23:16, , 3F
可能每幾分鐘才會變一次 我也正在考慮sharedpreferences
12/18 23:16, 3F

12/18 23:16, , 4F
不過還是想了解為什麼這樣做了userinfo還是會被清掉
12/18 23:16, 4F

12/19 12:54, , 5F
不清楚『放一陣子』是多久?經過待機或鎖屏?曾被系統或
12/19 12:54, 5F

12/19 12:54, , 6F
手動殺進程?是否曾經crash或low memory?都該去追logcat
12/19 12:54, 6F

12/19 12:54, , 7F
12/19 12:54, 7F

12/19 22:02, , 8F
notifidation 就算service被清掉也還會在
12/19 22:02, 8F

12/19 22:03, , 9F
以現在Android的機制 是無法保證service不會被殺掉
12/19 22:03, 9F

12/19 22:04, , 10F
頂多保證會重啟 所以暫存的東西務必都要存好以便重新讀取
12/19 22:04, 10F

01/05 15:50, , 11F
推樓上。有可能是整個App被Kill重啓,所以Service也重
01/05 15:50, 11F

01/05 15:50, , 12F
啟動了...
01/05 15:50, 12F
文章代碼(AID): #1Gq85SDh (AndroidDev)