我的类上有很多静态属性的数据。然后,当我调用startActivityForResult
来挑选图像(来自图库或相机)并处理结果时,静态值就是空的。
我从活动和类似的事情中了解saveInstance
,但这些数据与活动无关。它以静态方式设置在另一个类中。就像我们可以看到here和here一样,当应用程序被销毁时,必须删除静态变量。
有人可以帮我吗?
答案 0 :(得分:1)
然后,当我调用startActivityForResult来选择图像(来自图库或相机)并处理结果时,静态值就是空的。
当您的UI处于后台时,您的进程已终止,以释放其他进程的内存。这在调用第三方相机应用程序时相当常见。
静态数据成员只是缓存。如果您希望数据在流程终止后继续存在,请将该数据存储在数据库SharedPreferences
或其他某种形式的文件中。