我正在为Nexus One开发Froyo。我有一个问题,dalvik vm崩溃(在logcat AndroidRuntime中特别提到它正在关闭VM)并关闭正在运行的活动和服务。我的应用程序是一个活动。当VM关闭时执行onSaveInstanceState并在那里我将一些数据(一个int和两个字符串)保存到savedInstanceState Bundle。当我再次启动Activity时,传递给onCreate()的savedInstanceState Bundle为null,并且根本不调用onRestoreInstanceState。当Activity被销毁以回收内存时,这种方法完全正常 - 只是没有在VM崩溃时。如何在这种性质的崩溃中保存信息?
谢谢,
Jayce
答案 0 :(得分:3)
当虚拟机被拆除并重新启动时,虚拟机的内存会被重置。
在onSaveInstanceState()期间将状态保存到持久存储,如果活动重新启动时savedInstanceState为null,请读入持久设置并删除它们。