作者fasthall (Xen)
看板AndroidDev
标题[问题] service中的static object
时间Tue Dec 18 22:44:41 2012
最近在做一个类似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
1F:推 KeySabre:logcat看是否重新onCreate。可考虑sharedpreferences, 12/18 23:10
2F:→ KeySabre:我想userinfo应该不常变动? 12/18 23:10
3F:→ fasthall:可能每几分钟才会变一次 我也正在考虑sharedpreferences 12/18 23:16
4F:→ fasthall:不过还是想了解为什麽这样做了userinfo还是会被清掉 12/18 23:16
5F:推 KeySabre:不清楚『放一阵子』是多久?经过待机或锁屏?曾被系统或 12/19 12:54
6F:→ KeySabre:手动杀进程?是否曾经crash或low memory?都该去追logcat 12/19 12:54
7F:→ KeySabre:。 12/19 12:54
8F:推 sdyy:notifidation 就算service被清掉也还会在 12/19 22:02
9F:→ sdyy:以现在Android的机制 是无法保证service不会被杀掉 12/19 22:03
10F:→ sdyy:顶多保证会重启 所以暂存的东西务必都要存好以便重新读取 12/19 22:04
11F:→ tomap41017:推楼上。有可能是整个App被Kill重啓,所以Service也重 01/05 15:50
12F:→ tomap41017:启动了... 01/05 15:50