Общие настройки теряются после выключения устройства или уничтожения приложения

Есть много вопросов, связанных с общими предпочтениями и альтернативами. Моя проблема: когда я выключаю устройство или убиваю приложение, общие настройки теряются. Обратите внимание, что мой код на самом деле работает на Acer A500. Но на моем Motorola Xoom MZ604 он не работает !!

Прежде всего я пытаюсь восстановить мой HashSet в onCreate. Этот метод вызывается наверняка и реализован в виде синглтона.

public boolean restoreCollection(Context context){
    SharedPreferences settings = context.getSharedPreferences(context.getString(R.string.restore_values), 0);
    if(settings.getStringSet(context.getString(R.string.collection), null) != null){
        collection = settings.getStringSet(context.getString(R.string.collection), null);
        return true;
    } 
    collection = new HashSet<String>();
    return false;
}

Вызывая onDestroy, я сохраняю HashSet. Даже если не указано, что этот метод вызывается наверняка, настройки теряются в любом случае, я пытаюсь сохранить его в onPause с тем же результатом.

public void saveCollection(Context context){
    SharedPreferences settings = context.getSharedPreferences(context.getString(R.string.restore_values), 0);
    SharedPreferences.Editor e = settings.edit();
e.putStringSet(context.getString(R.string.collection), collection);
e.commit();
}

Были ли у кого-то проблемы с общими настройками и устройством XOOM, или я один? Возможно, что-то не так с моим кодом, но данные не теряются на моем планшете Acer.

Я также пытался PreferenceManager.getDefaultSharedPreferences (context), чтобы получить объект SharedPreferences

Спасибо за вашу помощь, Крис

Ответы на вопрос(3)

Ваш ответ на вопрос