Android onDestroy从最近列表中删除应用程序时的行为不正确

时间:2014-07-10 09:24:26

标签: android ondestroy

我遇到了onDestroy函数的奇怪行为。 我试图通过SharedPreference对象在onDestroy中保存一些参数。这是代码。

protected void onDestroy() {
    Log.e(TAG, "onDestroy() - ");
    // так же сохраняем статус приложение (закрыто) в shared preperence
    // для того чтобы из ресивера пушей можно было узнать статус приложения
    try{
        Log.e(TAG, "onDestroy() - A");
        SharedPreferences.Editor ed = preferences.edit();
        Log.e(TAG, "onDestroy() - C");
        ed.putString(packageName, statusClosed);
        Log.e(TAG, "onDestroy() - D");
        ed.commit();
        Log.e(TAG, "onDestroy() - E");
        //Log.e(TAG, "onDestroy() - Sharedpref save OK. Arg = " + getPackageName() + " Val = " + getString(R.string.core_pushns_status_closed));
    } catch (Exception e)
    {
        Log.e(TAG, "onDestroy() - Sharedpref save error.");
    }
    Log.e(TAG, "onDestroy2()");
}

当我使用硬件后退按钮关闭应用程序时 - 一切正常。 当我使用菜单按钮功能ed.commit()关闭app时崩溃。 有任何想法吗? 提前谢谢。

0 个答案:

没有答案