android - 单例被摧毁

标签 android service android-activity singleton

我有一个启动服务的 Activity 。还有一个单例 Data 涉及。当我通过转到主屏幕关闭 Activity 时,Data 单例在一段时间后被销毁,但是,服务应该继续运行。因此 Data 的某些字段再次变为 null,服务遇到空指针。

如何防止这种情况发生?

最佳答案

据我所知,为了安全起见,Activity 实例会在它们自己的类加载器中启动。任何附加到因加载您的 Activity 而加载的类的单例都与该类加载器相关联,而后者又与 Activity 生命周期相关联。

也就是说,我认为您不能保证这不会发生,因此不应该依赖它。

您需要序列化任何持久状态,然后在 Activity 启动时将其反序列化。

关于android - 单例被摧毁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6408555/

相关文章:

Android 的 Activity == Windows 的模态对话框?

Android保存文件到缓存目录

Android Realm 查询关系

PHP 脚本未在命令提示符 Windows 7 中运行

java - 启动器图标消失了

android - 从设置屏幕 android 返回时开始执行操作

android - 从子 Activity 返回父 Activity

android - 使用 Appcelerator Titanium 开发移动应用程序

c++ - 是否可以从 Windows 服务中获知上次用户事件?

java - 使用 Volley 时后台服务出现 OutofMemory 错误