模拟Android应用程序刷新内存

时间:2013-04-14 07:28:56

标签: android memory-management emulation

我有一个Android应用程序登录到服务器,获取会话ID并在应用程序运行时使用它。会话ID存储在SharedPeferences

出于某种原因,在一台设备(旧的三星Galaxy S)上,有时当应用程序唤醒时,会话ID消失了 - 无法从SharedPreferences中检索到它,而是返回null。这可能发生在手机大量使用后,需要Android释放内存资源。请注意,应用程序仍处于活动状态,不会从头开始重新启动 - 我的活动只是调用了onResume。

如果我能在模拟器上重现这种行为,我会非常高兴。有没有办法轻推模拟器做同样的事情?

1 个答案:

答案 0 :(得分:5)

如果您的活动在这些情况下没有获得创造,我会感到惊讶。在模拟器上测试此类事物的策略是暂停应用程序中的所有活动,然后使用adb来终止该过程。这基本上是框架在缺乏资源时所做的事情。当您恢复活动时,它会创建一个新进程,并尝试从暂停时保存的状态重新初始化您的活动。