我真的需要保存实例状态吗?

时间:2012-11-15 15:22:49

标签: android

我正在开发一款不支持屏幕旋转的应用。我真的需要保存所有活动的实例状态吗? Android杀死活动的难得程度如何?如果活动被杀死并恢复,它将只是看到用户第一次来到它时所做的事情,这可能是很久以前的事情,如果系统已经杀了它。如果它很少发生,对我来说似乎不是一个糟糕的用户体验。你觉得怎么样?

3 个答案:

答案 0 :(得分:2)

如果应用程序因为我去设置更改屏幕亮度而失去状态,这是一个灾难性的用户体验。这种情况经常发生在512MB RAM设备上 - 这些设备仍然大量销售。现在甚至还有生产256MB的设备。

是的,它发生了很多。某些用户比其他用户更频繁地使用它。这些用户将不会原谅您的应用。

答案 1 :(得分:1)

这实际上取决于您正在开发的屏幕类型。例如,当活动包含大量数据时,应该方便地保存活动状态(而不是所有活动)。

如果您有多个字段需要用户重新填写,那么这可能是一种糟糕的体验,尤其是如果设备的虚拟键盘不那么容易(例如假设您使用的是Galaxy mini)

换句话说,这是一个很好的做法,但由您决定是否会降低用户体验

塞尔

答案 2 :(得分:1)

FWIW,我已经为我们当前的产品编写了几个单一的定向应用程序,我觉得保存状态仍然很重要。当你返回时一切都是你离开的时候,它只是一个更有用的应用程序。

总的来说,这也不是那么多。首先,请记住,如果为布局中的视图分配ID,默认的Activity.onSaveInstanceState()将完成大部分工作。它会记住Checkbox状态,EditText内容等。您需要保存的内容相对较少。以下是我与州保存的一些事情:

  • 相关活动参数
  • ListView位置信息
  • TabView中的当前标签

活动参数是目前最常见的。