Android flash重启。在OnResume之前调用OnDestroy

时间:2013-11-29 12:34:26

标签: android

我有许多只在条件下发生的崩溃报告,OnDestroy在执行OnResume之前或之后被调用。

在这种情况下,我使用上下文初始化类。我在null reference exception中有getDefaultSharedPreferences的崩溃报告,只有在this.context为空时才会发生。只有在执行CalledByOnDestroy时,this.context才为空。

这怎么可能?

   public public class ImageProcessor {

        private Context context;

        // called by OnCreate
        public ImageProcessor(Context context) {
             this.context = context;
        }

        public void OnDestroyHandler() {
            this.context = null;
        }

        @Override
        public void OnResumeHandler() {
            this.frameId = 0;
            SharedPreferences defaultSharedPreferences = PreferenceManager.getDefaultSharedPreferences(this.context);
        }
    }

1 个答案:

答案 0 :(得分:0)

OnResumeHandler中,您可以检查this.context == null,如果不是,则获取defaultSharedPreferences