Android SharedPreferences
안드로이드로 개발을 하시다 보면 간단한 String 문자열등 저장해야 할 경우가 생깁니다.
일반적으로는 DB를 써야하는데 DB를 쓰기에는 너무 간단하여 낭비다~~~ 라고 생각되신다면 요녀석 SharedPreferences를 추천합니다.
SharedPreferences는 어플리케이션 내에 파일 형태로 저장된 녀석입니다. SharedPreferences는 파일 형태로 저장되다 보니 앱이 종료되거나 하더라도 지워지지 않고 유지가 된답니다.
앱을 지운다면 당연히 사라지게 되겠죠.
SharedPreferences는 아래와 같이 위치하게 됩니다.
예를 들어 jwandroid.test.aaa 라는 패키지로 test_01 이라는 Sharedpreferences를 만드셨다면 이녀석은
data/data/jwandroid.test.aaa/shared_prefs/test_01.xml 형태로 저장되어 있습니다.
사용법은 아주 간단하니 아래를 참고해 주세요.
package com.jw.test.number;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
public class Ch01_SharedPreferences extends Activity {
private SharedPreferences mPreference;
private String preName = "ch01_sharedPre";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
private void getMySharedPreferences(String _key) {
if(mPreference == null){
mPreference = getSharedPreferences(preName, MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE);
}
mPreference.getString(_key, "");
}
private void setMySharedPreferences(String _key, String _value) {
if(mPreference == null){
mPreference = getSharedPreferences(preName, MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE);
}
SharedPreferences.Editor editor = mPreference.edit();
editor.putString(_key, _value);
editor.commit();
}
private void deleteMySharedPreferences(String _key) {
if(mPreference == null){
mPreference = getSharedPreferences(preName, MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE);
}
SharedPreferences.Editor editor = mPreference.edit();
editor.remove(_key);
editor.commit();
}
private void deleteMySharedAllPreferences() {
if(mPreference == null){
mPreference = getSharedPreferences(preName, MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE);
}
SharedPreferences.Editor editor = mPreference.edit();
editor.clear();
editor.commit();
}
}
궁금하신것 들은 댓글 달아 주세요.
'프로그래밍 > 안드로이드' 카테고리의 다른 글
Can't create handler inside thread that has not called Looper.prepare() 에러발생시 해결방법 (1) | 2013.06.21 |
---|---|
Error generating final archive: Found duplicate file for APK: AndroidManifest.xml 에러시 해결방안 (1) | 2013.06.12 |
아이폰 스타일 안드로이드 토글버튼 (1) | 2013.04.26 |
[자바/Android] java.util.ConcurrentModificationException (6) | 2012.12.27 |
[안드로이드/Android] ImageView에서 ScaleType에 대해.. (0) | 2012.12.21 |
java.lang.IllegalArgumentException: View not attached to window manager (2) | 2012.12.20 |
[안드로이드/Android] 안드로이드 키보드 옵션 (8) | 2012.11.01 |
[안드로이드/Android] Bitmap Drawable 변환 크기 (5) | 2012.10.31 |
SQLite Android Database Cursor window allocation of 2048 kb failed (0) | 2012.10.26 |