반응형



**
 * 전체 데이터를 저장하고 관리하는 클래스
 * @author DervelJunNote
 *
 */
public class SharedPreference extends Activity{
	private SharedPreferences hsePrefer;
	private SharedPreferences.Editor editor;
	
	private static String nRegID; 
	private static Context nContext;
	
	public SharedPreference () {
		hsePrefer = PreferenceManager.getDefaultSharedPreferences(nContext);
		editor = hsePrefer.edit();
	}
	
	public SharedPreference (Context pContext) {
		SharedPreference.nContext = pContext;
	}
	
	// 값 불러오기
	public String getID() {	return hsePrefer.getString("ID", "");	}
	public String getPassword() {	return hsePrefer.getString("Password", "");	}
	public String getAuthority() {	return hsePrefer.getString("Authority", "");	}
	public String getName() {	return hsePrefer.getString("Name", "");	}
	public String getRegID() {	return nRegID;	}
	public boolean getLoginSaveCheckIs() {	
		if(hsePrefer.getString("LoginSaveCheckIs", "").equals("true"))
			return true;
		else 
			return false;
	}
	
	// 값 저장하기
	public void setID(String pValue) {		editor.putString("ID", pValue);		editor.commit();	}
	public void setPassword(String pValue) {		editor.putString("Password", pValue);		editor.commit();	}
	public void setAuthority(String pValue) {		editor.putString("Authority", pValue);		editor.commit();	}
	public void setName(String pValue) {		editor.putString("Name", pValue);		editor.commit();	}
	public void setRegID(String pValue) {		nRegID = pValue;	}
	public void setLoginSaveCheckIs(boolean pCheckIs) {	
		if(pCheckIs) {
			editor.putString("LoginSaveCheckIs", "true");		editor.commit();
		}
		else {
			editor.putString("LoginSaveCheckIs", "false");		editor.commit();
		}
	}

	// 값(Key Data) 삭제하기
	public void removeID() {		editor.remove("ID");		editor.commit();	}
	public void removePassword() {		editor.remove("Password");		editor.commit();	}
	public void removeAuthority() {		editor.remove("Authority");		editor.commit();	}
	public void removeName() {		editor.remove("Name");		editor.commit();	}
	public void removeRegID() {		nRegID = "";	}
	public void removeLoginSaveCheckIs() {		editor.remove("LoginSaveCheckIs");		editor.commit();	}

	// 값(ALL Data) 삭제하기
	public void removeAllPreferences() {
		editor.clear();
		editor.commit();
	}
}


 중요한 점은 일반적으로 getPreferences()를 사용하여 참조변수를 만드는 대신에 PeferenceManager를 이용해 Context만으로

만들 수 있다는 점이다. 그 덕분에 액티비티와 클래스를 나눌 수 있었다.

반응형

WRITTEN BY
데르벨준

,