安卓 Activity 周期?当 Activity 像 Whatsapp 一样被销毁时,文本仍然存在?

标签 android android-activity android-savedstate

我是 Android 的新手,最近专注于 Activity 周期。 我的理解是,如果我们销毁一个 Activity 类,所有未保存的数据都会被清除。

但 whatsapp 的聊天页面似乎很有趣,因为在我退出聊天页面并重新进入该特定聊天页面后,我会看到未保存的文本保留在编辑文本框中。

那么,他们会怎么做呢?它与“savedInstanceState”有关吗?

enter image description here

最佳答案

My understanding is that if we destroy an activity class, all the unsaved data will be cleared.

是的,当然除非重要数据在 onPause() 方法中保存在某些持久存储中并在 onResume() 方法中检索。这是在 Activity 被使用或操作系统杀死并稍后重新启动时持久保存数据的常用方法。

But whatsapp's chat page seems to be quite interesting as after i quit the chat page and re-enter that particular chat page, i would see the unsaved text remain in the edittext box.

当您点击返回按钮并再次进入聊天页面时就是这种情况。我确认当您终止应用程序本身时情况并非如此。所以一个很好的猜测是 Activity 永远不会被终止,数据通过 savedInstanceState 持久化。

关于安卓 Activity 周期?当 Activity 像 Whatsapp 一样被销毁时,文本仍然存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29426579/

相关文章:

java - 如何从非 Activity 类开始一个 Activity 并等到它完成?

android - 使用 Parcelable 将 List<Object> 保存到实例状态

android - 如何在 Jetpack Compose 1.2.0 中访问 "androidx.savedstate.ViewTreeSavedStateRegistryOwner"?

java - Android Studio - 无法实例化 Activity

android - 从适配器中的 fragment 调用元素

android - 如何保存应用程序类状态

android - GCM - 不清楚应用程序更新的工作原理?

android - 是否可以将网络调用超时设置为 60 秒以上。

android - 具有自定义布局的 ActionBar 在 Android 4.4.2 (KitKat) 上不占据全屏宽度

java - 使用较新版本的 Android Studio 构建应用程序一年后广告停止运行