在我的 Android 应用程序中,我设置了一个自定义的应用程序派生类。在其中我有一个成员字段来存储一些任意对象。
所以我有:
public class MyApp extends Application {
public static MyApp mInstance;
public Object mData;
@Override
public void onCreate() {
mInstance = this;
}
public void setData(Object data) {
mData = data;
}
public Object getData() { return mData; }
}
现在Activity
我正在做
public doSetData() {
someMyData = ....
MyApp.mInstance.setData(someMyData);
}
在另一个Activity
我正在做
@Override
public void onCreate(Bundle) {
Object myDataRetrieved = MyApp.mInstance.getData();
}
我可以看到有时myDataRetrieved
是null
。但是,我相信我从来没有通过null
。MyApp.setData()
当然,我可能是错的。
然而,会不会有这样的情况下MyApp.mData
会自行变为无效?