【发布时间】:2023-03-19 15:05:01
【问题描述】:
如果设备处于空闲状态,有什么方法可以避免 Android 中的静态数据丢失?
我有一个静态对象,它将存储来自活动 UI 的一些值。 如果设备闲置 4-5 小时,则该静态对象将被移除以将内存用于其他正在运行的应用程序。
如果我做错了,还有其他方法可以避免吗?
【问题讨论】:
标签: android android-intent android-emulator android-widget
如果设备处于空闲状态,有什么方法可以避免 Android 中的静态数据丢失?
我有一个静态对象,它将存储来自活动 UI 的一些值。 如果设备闲置 4-5 小时,则该静态对象将被移除以将内存用于其他正在运行的应用程序。
如果我做错了,还有其他方法可以避免吗?
【问题讨论】:
标签: android android-intent android-emulator android-widget
你无法避免。 Android 可以随时杀死你的进程,并且不保证会回调你。
只有当您的应用进入后台时才会发生这种情况。将数据保存在 onPause() 中并在 onResume() 中重新加载。有关详细信息,请参阅 Android 文档以了解 Activity 生命周期。
【讨论】:
不,这就是 Android 的工作方式。
简单地说,如果数据是持久的,即如果它的生命周期超出了创建它的Activity 之一,则将其保存在持久存储(即内部存储器)、平面文件或数据库中取决于数据是否具有内部结构。
【讨论】: