-
[Android] SharedPreference; 데이터 임시 저장Android 2022. 3. 12. 21:31
앱을 종료하더라도 앱 사용하며 발생한 저장되어야 할 데이터가 남아있도록 하는 것이다.
앱 설정 창에 많이 쓰인다. 설정 값은 앱 종료 후에도 저장되어 있어야 하기 때문이다.
단, 임시저장이기 때문에 앱을 삭제할 경우 저장된 데이터도 함께 삭제된다.
이번에는 앱에서 EditText 상 입력한 문자가 앱 종료 후 재실행 후에도 남아 있도록 하는 예제를 만들어 보았다.
xml에는 EditText만 넣어두고 id를 et_save로 지정해 두었다.
MainActivity.java
package com.example.sharedpreference; import androidx.appcompat.app.AppCompatActivity; import android.content.SharedPreferences; import android.os.Bundle; import android.widget.EditText; public class MainActivity extends AppCompatActivity { EditText et_save; String shared = "file"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_save = (EditText) findViewById(R.id.et_save); //xml의 id java로 연결 // 2. 시작 시 불러오기 구문 SharedPreferences sharedPreferences = getSharedPreferences(shared,0); String value = sharedPreferences.getString("hong", ""); // 저장된 값 가져올 것이기에 value는 빈칸 et_save.setText(value); //value에 있는 string 값을 setText } // 1. 종료 시 저장 구문 @Override protected void onDestroy() { // activity가 종료(destroy)될 때 호출 super.onDestroy(); SharedPreferences sharedPreferences = getSharedPreferences(shared, 0); SharedPreferences.Editor editor = sharedPreferences.edit();// SharedPreference에 editor 연결 String value = et_save.getText().toString(); // EditText 에 입력된 문자 가져옴 editor.putString("hong", value); // 받아온 값 에디터에 넣어주기. hong 이라는 이름으로 value 값을 저장할거야 editor.commit(); // 저장을 완료해라 } // }
'Android' 카테고리의 다른 글
[Android] Navigation Menu Customizing (0) 2022.03.14 [Android] WebView (0) 2022.03.12 [Android] Navigation menu (0) 2022.03.12 [Android] ListView 리스트 만들고 데이터 저장하기 (0) 2022.03.09 [Android] 패키지구조&역할 (0) 2022.03.09