SharedPreferences Löschen / Speichern

Ich versuche einen Checker zu erstellen und möchte einen Wert in SharedPreferences speichern. Aber ich bin nicht sicher, ob es funktioniert

Das was ich mache um den Wert zu speichern ist: *

    SharedPreferences prefs = getSharedPreferences("PREFERENCE", MODE_PRIVATE);
    boolean firstrun = prefs.getBoolean("firstrun", true);

    db = openOrCreateDatabase("value.db", Context.MODE_PRIVATE, null); // optional CursorFactory

    if (firstrun) {
          SharedPreferences.Editor editor = prefs.edit();

          db.execSQL("CREATE TABLE startValue (ID Integer Primary Key, myValue Integer)");

          db.execSQL("INSERT INTO startValue (myValue) VALUES (2)"); 

          editor.putBoolean("firstrun", false);
          editor.apply();

           }

    // Save the state
    getSharedPreferences("PREFERENCE", MODE_PRIVATE)
        .edit()
        .putBoolean("firstrun", false)
        .commit();

Und um das Preferenece von einer anderen Aktivität zu entfernen, gehen Sie folgendermaßen vor:

     try{
            db = openOrCreateDatabase("value.db", Context.MODE_PRIVATE, null); // optional CursorFactory

            db.execSQL("DROP TABLE IF EXISTS startValue");
            db.close();

            SharedPreferences preferences = getPreferences(0);
            SharedPreferences.Editor editor = preferences.edit();

            editor.remove("firstrun");
            editor.clear();
            editor.commit();

            this.finish();
        }    
        catch(SQLException ex)
        {
        //catch error here
        }

Problem

Aber wenn ich teste, wie ich sehe, werden die Einstellungen nicht gelöscht. Mache ich etwas falsch oder?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage