把从服务器接受的User类放到Application下,在某个Activity中就get不到了,是不是User信息不适合放在Application下?应该怎么存?
Update 追加对问题的描述
定义了一个public class App extends Application,在配置文件中设置好的初始化,里面放了一个UserBean的getter和setter方法,在‘A’-Activity中,用App.getUser().getxx没问题,跳转到'B'-Activity中,App.getUser()就出现了空指针。
Android对
Applicaton
类做了如下描述:也就是说,我们可以继承该类以保存全局的“application state”。因为这些变量是全局的,所以应用的所有组件都可以获取/更改这些变量。链接
所以理论上,保存的全局变量在整个App的生命周期内是不会丢掉的,除非被程序主动改掉。
建议在整个工程中检查都是谁在引用Application子类中存储的这个全局变量,除了A-Activity和B-Activity之外? 或者你继承的Application类中,有没有在后来改到它?
如果还未解决,尝试使用单例模式,代替继承Application类以保存你的全局变量。