android - 我应该实现 onRetainNonConfigurationInstance 吗?

标签 android state

我刚刚阅读了有关维护我的 Android 应用程序状态的内容,并偶然发现了 onRetainNonConfigurationInstance。但是在阅读 documentation 时我注意到这句话:

This function is called purely as an optimization, and you must not rely on it being called.

所以我想知道:什么时候使用这种方法才真正有意义。如果我不能依赖它被调用,我无论如何都需要另一种机制来传输状态(在我的例子中这将是一些序列化)。因此,除非我遇到任何性能问题,否则我有什么理由应该选择 onRetainNonConfigurationInstance 吗?

如果它能保证被调用,我很乐意使用它,但如果不能,它似乎毫无用处。

我错过了什么吗?你什么时候使用这个方法?您将如何保持网络连接或类似的东西?

谢谢!

最佳答案

文档的意思是,有些情况下不会立即重新创建 Activity,在这种情况下不会调用 onRetainNonConfigurationInstance()。您不能使用此方法来持久化数据。它仅用于传输在配置更改期间创建成本高昂的对象。

关于android - 我应该实现 onRetainNonConfigurationInstance 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4720927/

相关文章:

带有操作和下拉菜单的 Android 通知

java - 创建日历 3 年

android - com.firebase.client.FirebaseException : Failed to parse node with class class java. util.Date android

javascript - 通过 Javascript 在各种浏览器窗口/选项卡中维护 iFrame 页面的状态

android - 在方向改变时保存 fragment 状态

android - 如何从 Activity 获取 Widget 的 TextView 的文本?

android - 适用于 iOS 和 Windows Phone 的 Android Renderscript 是什么?

objective-c - 加载 Quartz.framework Objective-C 后出现奇怪的错误

flutter - Flutter 中的 OnStateChanged 方法

clojure - 在 Clojure 中的嵌套宏之间传递编译时状态