2

在我的应用程序中,我存储了一些 SharedPreference 数据。

当应用程序被杀死时,我必须清除所有存储的数据。

所以,我在我的活动中做了onDestroy()如下:

@Override
protected void onDestroy() {

    if(isBackPressed==0){
        if(Prefrences.checkPref(MyActivity.this,MAIN_PREF)){
            Prefrences.removePref(MyActivity.this,MAIN_PREF);
            Prefrences.removePref(MyActivity.this,PREF_1);
            Prefrences.removePref(MyActivity.this,PREF_2);
            Constant.displayLogE(">>>>>>>>>>","### Prefrence removed ");
        }
        Constant.displayLogE(">>>>>>>>>>","### Destroy activity ");
    }
    finish();
    super.onDestroy();
}

在这里,我采取了isBackPressed因为,当 onBackPressed 调用它时,它会自动调用 finish() 和 onDestroy() 方法调用。所以,我已经初始化isBackPressed为 1 内部onBackPressed()方法。

没关系,我只需要在应用程序被杀死时删除我的偏好数据。但是,问题是当我杀死应用程序时,onDestroy()方法没有调用。

谢谢。

4

1 回答 1

6

试试这个方法。

public class App extends Application{

    @Override
    public void onCreate() {
      doSomeCleanWork();
    }
}
于 2017-06-01T08:26:25.137 回答