例如 Activity A
中成员变量里有一个JavaBean
对象数据。而此时,从Activity A
进入了Activity B
,那么这个时候Activity A
中保存的这个数据对象是否会被销毁掉?如果从Activity B
在进入C
呢?
我的理解是只要Activity A
的示例没有被Android
系统销毁,那么那的成员变量就应该一直存在才对。但是现在出现了这样的一个情况就是当在B或C中调用A
中的函数使用这个数据时出项空指针的问题。所以想问问Activity
的成员变量在Activity
的生命周期中的这个问题。
我的操作不需要将这个数据类传给其他的Activity
,在但是在使用时,发现这个Activity
的类成员会变的不可靠,特别是在这个Activity
上startActivity
进入其他页面之后。如果我把这个数据放到Application
类中,是不是可以解决这个问题?
这个问题问的好,我也没有好好考虑过这个问题,应该涉及java内部机制,内存模型的东西
放在application是没有问题的,但是不是很推荐这样做。
我的做法是放到cache里,且get后,直接clear掉了。因为我的考虑是,很多场景下,值我只需要用一次,放到cache里,用完就扔了