从单例切换到应用程序对象,仍然获得空指针异常

时间:2012-12-12 15:18:49

标签: java android

我从单例切换到应用程序对象以存储应用程序数据,因为据我所知,我的缓存数据在应用程序对象中比在常规单例中存活的可能性要大得多。

但我仍然遇到问题。如果我切换到其他几个应用程序,然后回到我的应用程序,在加载getApplication()后加载我的事件的调用会抛出空指针异常。

我发现更奇怪的是,来自我原始意图的捆绑包仍处于活动状态并且在应用程序切换后幸存下来。

如何保存数据,这些数据不一定需要以永久方式持久化(如果整个应用程序被杀死并重新加载,它只会将其从Web服务中删除并重新开始,这就是为什么我想切换到应用程序对象就可以了。)

1 个答案:

答案 0 :(得分:0)

您是否希望保留与您的应用程序何时被用户放入后台相关的数据,然后将其恢复?

也许覆盖onSaveInstanceState和onRestoreInstanceState方法,并且正在寻找存储和从bundle中恢复的方法。

http://developer.android.com/reference/android/app/Activity.html#onRestoreInstanceState(android.os.Bundle

http://developer.android.com/reference/android/app/Activity.html#onSaveInstanceState(android.os.Bundle

然后,您可能想要定义Parcelable接口

http://developer.android.com/reference/android/os/Parcelable.html

您要存储的课程。

或者您也可以使用共享首选项api。

http://developer.android.com/reference/android/content/Context.html#getSharedPreferences(java.lang.String,int)