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;
}
}
分享到:
相关推荐
SharedPreferences文件在不同应用之间数据共享
这是一个基于android的保存配置文件的demo,通过这个应该就能明白其他的保存配置文件的相关方法,使用的是SharedPreference ,希望对大家有帮助,还有做的不好的不吝赐教
SharedPreferences 保存读取数据, 使用AutoCompleteTextView 和SharedPreferences 实现历史记录提示。调用文件管理器自定义路径读取文件
SharedPreferences文件存储
Android 3种数据保存(SharedPreferences存储 内部文件存储 数据库存储),如项目包有问题请联系我谢谢
案例十(文件存储--sharedpreferences
sharedpreferences Demo
Android系统SharedPreferences进行的封装
Android 使用SharedPreferences实现数据的读写
DataStore 以异步、一致的事务方式存储数据,克服了 SharedPreferences(以下统称为SP)的 一些缺点。 DataStore 基于 Kotlin 协程和 Flow 实现,并且可以对 SP 数据进行迁移,旨在取代 SP 。 DataStore 提供了两种...
SharedPreferences SharedPreferences是一种键值对的数据存储方式,它是以xml标签文件形式存在。 实验 如何读SharedPreferences记录数据 和写数据类似,需要getSharedPreferences返回应用中的数据对象,但不需要...
主要介绍了Android使用SharedPreferences存储XML文件的实现方法,实例分析了SharedPreferences类的基本初始化与文件存储相关技巧,需要的朋友可以参考下
android应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demo...
SharedPreferences封装
SharedPreferences存取list集合
SharedPreferences详细解析
Android自学笔记-8-Android数据存储1:文件、SharedPreferences和获取sd卡信息
在每个Android软件都会使用到SharedPreferences,将密码保存在本地,但是由于没有对密码进行加密,只要用户对手机进行root,获取了权限就很容易得到密码,为了防止密码外露,每个Android软件都要对SharedPreferences...
结合一个登录界面的验证,使用SharedPreferences接口将数据存储在本地的文件中,实现以下功能: 1、验证登录信息的格式是否合法 2、保存登录信息 3、再次登录,填充登录信息 4、展示登录信息