【发布时间】:2012-02-07 07:17:38
【问题描述】:
我有两个不同的活动。第一个启动第二个。
Intent intent = new Intent(this, Activity2.class);
startActivity(intent);
在第二个活动中,我调用 System.exit(0)。 我认为第一个活动是由“页面堆栈”引起的。 但我发现发生了两件事。
- 正在进行的变体失去了它的价值。 (我认为进度重启)
- 在第一个活动中创建的文件,并在第二个活动中附加数据并保存,丢失!(从沙箱中删除)。我使用
applicationContext.openFileOutput(fileName, Context.MODE_PRIVATE);创建的文件
在那种情况下是否清理了沙盒?通过'return key'甚至android.os.Process.killProcess(android.os.Process.myPid())正常退出,沙箱中的文件被保留。
那么,System.exit(0) 执行时到底发生了什么?
谢谢!
【问题讨论】:
-
你不使用 finish() 代替吗?
标签: android kill-process