gpt4 book ai didi

android - "saved states"是如何工作的? (安卓)

转载 作者:行者123 更新时间:2023-11-30 04:52:52 25 4
gpt4 key购买 nike

我刚刚读了一篇非常有趣的文章,内容是关于 android(我假设其他操作系统)在内存不足时如何工作。这在理论上是如何完成的?是不是类似于Java的对象序列化?

最佳答案

一句话:是的。

再多说几句,有点。你必须手动处理比我个人想要的更多的东西。本质上,Android 为您提供的所有内容都是一个散列,用于推送一些由字符串引用的可序列化对象,保证在应用程序关闭时是安全的。因此,无论何时发生您希望在应用程序关闭期间保留的事情,您都需要负责更新这个已保存的状态散列(并让 Android 知道您已经这样做了)。这包括诸如表单字段中未完成的文本输入之类的事情。这意味着您有很多东西要听。

然后 Android 将在您的 Activity 中调用一个特定的 Hook ,该 Hook 在它回收您的应用程序时处理将状态恢复到 Activity 并且您需要这样做。并非所有回收都会发生这种情况 - 您的应用程序存在各种存在/存在状态。

棘手的部分是,因为无论如何你都应该做这种乏味的工作,Android 变得懒惰并实现屏幕旋转之类的东西作为你的应用程序的完全回收。

一旦你习惯了,我会让它听起来比实际情况更糟;在 Java 和移动计算的范围内,这确实是一个不错的解决问题的方法。

当然,这是针对Android的回应。其他(桌面)操作系统依靠虚拟内存和分页来处理内存限制。

关于android - "saved states"是如何工作的? (安卓),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2589715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com