commitData () и saveState () могут показаться избыточными.
Но документация
говорит
Кроме того, большинство администраторов сеансов, скорее всего, будут запрашивать сохраненное состояние сразу после запуска приложения. Это позволяет менеджеру сеанса узнать о политике перезапуска приложения.
Может быть, это объясняет, почему понятия «данные» и «состояние» разделены. Во время этого первоначального вызова было бы неудобно взаимодействовать с пользователем.
Ответ по умолчанию на завершение работы приложения выглядит как хороший дизайн, потому что, если вы не переопределите его, тогда самым безопасным будет закрыть приложение (как если бы пользователь выбрал действие Quit), что также должно сохранить данные пользователя.
ОС закрывается или только сеанс? Что касается вашего приложения, то это только сеанс (поскольку технически пользователь может выйти из системы, а ОС продолжает работать.) И пользователь может считать, что приложение не «закрыто», а просто «приостановлено». с сохранением данных. '
Также рассмотрим мобильные платформы, такие как iOS, где приложение работает вечно.