`
懒骨头
  • 浏览: 44446 次
  • 性别: Icon_minigender_1
  • 来自: 南通
社区版块
存档分类
最新评论

SharedPreferences 作为系统配置文件

阅读更多
package com.lazy.upup.data;

import com.lazy.upup.util.Constant;

import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;

/**
 * 
 * <P> [功能] 存储系统中的常用数据</P>
 * <P> [说明] </P>
 * <P> [备注] </P>
 * <P> [环境] android 2.1 </P>
 * <P> Copyright(c) 《天天向上》 -- UP.UP 2011 </P>
 *
 * @author Lazy
 * @version ver 1.0
 * @2011-4-14 下午09:28:10
 */
public class UpUpData {

	private static UpUpData upUpData;
	private SharedPreferences.Editor editor;
	private SharedPreferences sp;
	
	private UpUpData(Context context){
		//可以设置的方式:MODE_PRIVATE(本程序私有),MODE_WORLD_READABLE(其他程序客可读),MODE_WORLD_WRITEABLE(其他程序可选)
		SharedPreferences localSharedPreferences = ((Activity)context).getSharedPreferences(Constant.UPUP_DATE, Activity.MODE_PRIVATE);
	    this.sp = localSharedPreferences;
	    editor = this.sp.edit();
	    //初始化对象,确认数据是否存在,不存在就写入默认数据
	    String sms = getString(Constant.DATA_KEY_SMS);
	    if("".equals(sms)){
	    	writeDefData();
	    }
	}
	
	/**
	 * 设置默认数据(目前就一个系统配置)
	 */
	private void writeDefData(){
		writeString(Constant.DATA_KEY_SMS,Constant.DATA_KEY_SMS_DEF);
	}
	
	/**
	 * 获得数据实例
	 * @param context
	 * @return
	 */
	public static UpUpData getInstance(Context context){
		if(upUpData==null){
			upUpData = new UpUpData(context);
		}
		return upUpData;
	}
	
	/**
	 * 获得数据
	 * @param key
	 * @return
	 */
	public boolean getBoolean(String key){
		return sp.getBoolean(key, false);
	}
	
	public int getInt(String key){
		return sp.getInt(key, 0);
	}
	
	public float getFloat(String key){
		return sp.getFloat(key, 0F);
	}
	
	public long getLong(String key){
		return sp.getLong(key, 0);
	}
	
	public String getString(String key){
		return sp.getString(key, "");
	}
	
	/**
	 * 删除数据
	 * @param key
	 */
	public void remove(String key){
		editor.remove(key);
		editor.commit();
	}

	/**
	 * 保存数据
	 * @param paramString
	 * @param paramBoolean
	 */
	public void writeBoolean(String key, boolean value){
		editor.putBoolean(key, value);
		editor.commit();
	}

	public void writeInt(String key, int value){
		editor.putInt(key, value);
		editor.commit();
	}
	
	public void writeLong(String key, long value){
		editor.putLong(key, value);
		editor.commit();
	}
	
	public void writeFloat(String key, float value){
		editor.putFloat(key, value);
		editor.commit();
	}
	
	public void writeString(String key, String value){
		editor.putString(key, value);
		editor.commit();
	}
	
	/**
	 * 销毁对象
	 */
	public void destroy(){
		sp = null;
	    editor = null;
	    upUpData = null;
	}
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics