SharedPreferences (데이터를 기억하는 함수)

 데이터를 저장하여 앱을 완전 종료하여도 기억할 수 있는 코드입니다

SharedPreferences 초기화

import android.content.Context; import android.content.SharedPreferences; public class MyPreferences { private static final String PREFERENCES_NAME = "MyAppPreferences"; private SharedPreferences preferences; public MyPreferences(Context context) { preferences = context.getSharedPreferences(PREFERENCES_NAME, Context.MODE_PRIVATE); } public void saveData(String key, String value) { SharedPreferences.Editor editor = preferences.edit(); editor.putString(key, value); editor.apply(); } public String loadData(String key, String defaultValue) { return preferences.getString(key, defaultValue); } }

액티비티에서 사용

import android.app.Activity; import android.os.Bundle; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private EditText editText; private MyPreferences myPreferences; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = findViewById(R.id.editText); myPreferences = new MyPreferences(this); String savedText = myPreferences.loadData("savedText", ""); editText.setText(savedText); } @Override protected void onPause() { super.onPause(); String textToSave = editText.getText().toString(); myPreferences.saveData("savedText", textToSave); } }

savedText라는 키로 문자열 데이터를 저장하여 완전 종료해도 데이터를 로드할 수 있습니다.

onCreate 메서드에서는 이 데이터를 로드하고, onPause 메서드에서는 변경된 데이터를 저장합니다