Android - zapamiętanie stanu po wyjściu z aplikacji

0

Mam taką przykładową aplikację składającą się z następujących komponentów:

  • EditText aET reprezentowany przez obiekt a_et;
  • EditText bET reprezentowany przez obiekt b_et;
  • Button sumBT;
  • EditText sumET reprezentowany przez obiekt sum_et;

Program liczy sumę aET i bET i wyświetla w sumET (sum = a + b).

public class MainActivity extends AppCompatActivity {

    EditText a_et, b_et, sum_et;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        a_et = (EditText) findViewById(R.id.aET);
        b_et = (EditText) findViewById(R.id.bET);
        sum_et = (EditText) findViewById(R.id.sumET);
    }

    public void sumClick(View view) {
        float a, b, sum;
        String txt;

        a = Float.parseFloat(a_et.getText().toString());
        b = Float.parseFloat(b_et.getText().toString());
        sum = a + b;
        txt = Float.toString(sum);

        sum_et.setText(txt);
    }
}

Wprowadzam dane do dwóch pierwszych EditText-ów a_et i b_et. Po naciśnięciu przycisku sumBT wywoływana jest metoda sumClick() i otrzymuję sumę w komponencie EditText sum_et.
Moje pytanie brzmi: Jak zapamiętać stan tych komponentów EditText (wartości) po wyjściu z aplikacji, tzn. uruchamiam ponownie aplikację i widzę ostatnie wartości.
Przy obracaniu ekranu stan jest zapamiętywany.

1

Skorzystaj z mechanizmu SharedPreferences.

0

Poczytać tutaj:
https://developer.android.com/training/basics/data-storage/index.html

Metod jest kilka - od wymienionych SharedPreferences, przez pliki (np. w ładnym JSONie), aż do zapisu w bazie danych.

0

Dodam tylko to że shared prefences jest spoko, ale na pewno nie do zapisywania newralgicznych danych bo łatwo takie coś wyciągnąć z tefefonu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1