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空间,不同应用之间无法直接访问彼此的配置文件。 2. 使用方法: SharedPreferences主要通过以下三个类进行操作:SharedPreferences、SharedPreferences.Editor和Context。...
**Android的SharedPreferences详解**...总之,SharedPreferences作为简单的数据存储工具,在处理应用程序配置和简单状态管理方面非常有效。理解它的工作原理和最佳实践,能帮助开发者编写更高效、更稳定的Android应用。
SharedPreferences是Android系统提供的一种轻量级的数据存储方式,它主要用于应用程序中简单数据的持久化存储,例如用户设置、应用状态等。SharedPreferences采用键值对的形式保存数据,支持基本类型如布尔、整型、...
SharedPreferences是Android系统提供的一种轻量级的数据存储方式,主要用于存储应用程序中的配置信息或者简单的数据,如用户设置、应用状态等。它使用XML文件来持久化数据,并提供了方便的API供开发者进行读写操作。...
在Android应用开发中,有时我们需要将一些系统配置信息存储在外部文件中,以方便管理和更新。在这种情况下,`ini`文件格式是一个常见的选择,因为它的结构简单,易于读写。本文将详细介绍如何在Android项目中读取...
- 非持久化的配置信息:这些信息不需要写入数据库或文件系统,只需在应用生命周期内存在即可。 5. **源码解析**: - 了解SharedPreferences的内部实现机制,可能涉及文件读写、并发控制等,这对于深入理解其工作...
SharedPreferences是Android系统提供的一种轻量级的数据存储方式,主要用于存储应用程序中的简单配置数据,如用户首选项、开关状态等。它的优点在于操作简单、快速,适用于应用在不同启动时保存和恢复用户设置的情况...
SharedPreferences的工作原理是将数据以XML格式保存到设备的文件系统中,通常位于 `/data/data/your_package_name/shared_prefs` 目录下。文件名为你的应用包名加上.xml后缀。由于它是基于文件的存储方式,因此,...
1. 避免过多的数据存储:SharedPreferences适合存储少量配置项,如果需要存储大量数据,应考虑使用SQLite数据库或文件系统。 2. 使用`apply()`而非`commit()`:由于`apply()`是异步的,不会阻塞UI线程,所以推荐在...
总之,SharedPreferences作为Android开发中的一个基础组件,虽然功能相对简单,但在保存和恢复轻量级数据方面发挥了重要作用。理解和熟练使用SharedPreferences工具类,能够帮助开发者更好地管理应用的配置和状态。
在Android开发中,SharedPreferences是一个广泛使用的轻量级数据存储机制,用于存储应用的简单键值对数据,如用户设置或小量配置信息。这个“Android轻量级安全SharedPreferences包装器”是一个开源项目,旨在增强...
每次调用commit()方法,系统都会生成一个新的XML文件并替换旧文件,确保数据的一致性。 在实际开发中,为了提高用户体验,通常会在Activity的onCreate方法中加载SharedPreferences以恢复上次的状态,而在Activity...
`SharedPreferences`是Android系统提供的一种轻量级的数据存储机制,它主要用于存储一些简单的键值对数据,如布尔值、整数、浮点数、字符串等。这种存储方式是非持久化的,但可以在应用的生命周期内以及用户关闭应用...
对于两个不同的`SharedPreferences`文件`TestSpA`和`TestSpB`,我们可以在`ContentProvider`中分别创建对应的实例。 ```java public class SharedPrefsProvider extends ContentProvider { private ...
- `getPreferences(int mode)`:仅限于Activity使用,会自动使用当前Activity类名作为配置文件的名称。 #### 2.2 操作SharedPreferences - `edit()`:获取`SharedPreferences.Editor`,用于对SharedPreferences...
- SharedPreferences对象可以看作是一个持久化的配置文件,它会将数据保存到磁盘上。 - 数据的读写操作通过编辑器(SharedPreferences.Editor)进行,操作完成后需要调用commit()或apply()方法来保存更改。 2. **...
SharedPreferences是Android系统提供的一种轻量级的数据存储方式,主要用于应用程序保存一些简单的配置信息,如用户设置、游戏得分等。它采用XML格式将数据持久化到设备的文件系统中,易于读写,适合小规模的数据...
在Android应用开发中,SharedPreferences是Android系统提供的一种轻量级的数据存储方案,主要用于保存应用程序的配置参数或简单数据。它的优势在于操作简便、快速,并且能够实现数据持久化,即使应用关闭后,数据也...
`SharedPreferences`是Android系统提供的一种轻量级的数据存储方式,主要用于应用程序中保存一些简单的配置信息或者用户设置。它采用键值对(key-value pairs)的形式来存储数据,支持基本数据类型如布尔、整型、...
SharedPreferences是Android系统提供的一种轻量级的数据存储方式,主要用于存储应用程序中的少量、简单的配置数据,如用户设置、应用状态等。它的操作简单、快速,无需创建数据库或文件系统,因此在处理小规模的数据...