`
xuanzhui
  • 浏览: 200858 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Android SharedPreferences使用

阅读更多

1. 常规操作

 

1)保存简单变量

final SharedPreferences prefs =
            activity.getSharedPreferences(CACHE_NAME, 0);

SharedPreferences.Editor spEditor = prefs.edit();
spEditor.putString(CACHED_STR_CONSTANT_NAME, cachedStr);

spEditor.apply();

 

2)读取简单变量

String cacheStr = activity.getSharedPreferences(CACHE_NAME, 0)
            .getString(CACHED_STR_CONSTANT_NAME, null);

 

3)删除特定变量

final SharedPreferences prefs =
        activity.getSharedPreferences(CACHE_NAME, 0);
SharedPreferences.Editor spEditor = prefs.edit();

spEditor.remove(CACHED_STR_CONSTANT_NAME);

spEditor.apply();

 

4)清空所有变量

final SharedPreferences prefs =
        activity.getSharedPreferences(CACHE_NAME, 0);
SharedPreferences.Editor spEditor = prefs.edit();
spEditor.clear();
spEditor.apply();

 

2. 复杂类型

       可以考虑SQLite,但是如果数据量并不是很大可以考虑先转成json字符串,再存储;读取的时候再将该json串转化为对象。

 

比如要保留N个商品的信息

1)首先创建GoodsItem类:

public class GoodsItem {
    String goodsName;
    Float goodsPrice;

    //...
}

 

2)然后创建用于json解析的class,包含所有数据的字段:

public class CachedGoodsItems {
    List<GoodsItem> goodsItems;
    //...
}

 

3)存储(此处使用Gson将对象转换为json串,cachedGoodsItems为CachedGoodsItems 类型)

Gson gson = new Gson();
String cachedStr = gson.toJson(cachedGoodsItems);

final SharedPreferences prefs =
    	activity.getSharedPreferences(CACHE_NAME, 0);
SharedPreferences.Editor spEditor = prefs.edit();
spEditor.putString(CACHED_STR_CONSTANT_NAME, cachedStr);

spEditor.apply();

 

4)读取(此处使用Gson解析,cachedGoodsItems为CachedGoodsItems 类型)

String cacheStr = activity.getSharedPreferences(CACHE_NAME, 0)
                .getString(CACHED_STR_CONSTANT_NAME, null);

if (cacheStr != null) {
    Gson gson = new Gson();
    cachedGoodsItems = gson.fromJson(cacheStr, new TypeToken<CachedGoodsItems>() {
            }.getType());
}

 

 

分享到:
评论

相关推荐

    Android-Fit利用SharedPreferences存储对象

    然而,直接使用SharedPreferences存储自定义对象或复杂数据结构是不支持的,因为SharedPreferences只支持基本数据类型的序列化和反序列化。但是,在某些场景下,我们可能需要将自定义对象存入SharedPreferences,...

    android SharedPreferences简单使用

    这篇博客"android SharedPreferences简单使用"可能会涵盖以下几个方面: 1. **SharedPreferences的基本操作**: - `getSharedPreferences()`方法:创建SharedPreferences对象,通常在`Context`上下文环境中调用,...

    android应用SharedPreferences_Demo

    android应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demo...

    Android中DataStore替代SharedPreferences

    【Android中的DataStore替代SharedPreferences】 Android开发者们长期以来一直依赖SharedPreferences作为轻量级的数据存储解决方案,它的简单易用性使其在小规模数据存储方面受到了广泛欢迎。然而,随着应用程序...

    Android SharedPreferences应用 本地注册登陆

    Android SharedPreferences应用 实现本地注册登陆 功能简单易懂(实例) http://blog.csdn.net/h1028962069/article/details/9129851 文章代码

    Android SharedPreferences设置初始密码

    在Android开发中,SharedPreferences是一个轻量级的数据存储方式,常用于保存应用的配置信息或用户设置,如登录状态、主题颜色、用户偏好等。在这个场景中,我们将详细探讨如何使用SharedPreferences来设置和修改...

    Android中使用SharedPreferences实现自动登录

    本文将详细介绍如何在Android中使用SharedPreferences实现自动登录。 一、SharedPreferences简介 SharedPreferences是Android中的一个接口,用于保存应用的首选项或设置。这些数据通常是非结构化的,以键值对的形式...

    android SharedPreferences小例子

    在这个小例子中,我们将探讨如何在Android应用中使用SharedPreferences来保存键值对。 首先,我们需要了解SharedPreferences的基本概念。SharedPreferences对象提供了一种接口,让我们可以创建、修改和读取存储在...

     Android的SharedPreferences的使用

    SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/&lt;包名&gt;/shared_prefs目录下。SharedPreferences对象本身只能...

    android学习SharedPreferences的使用方法

    在Android开发中,...总之,SharedPreferences是Android开发中不可或缺的一部分,掌握其使用方法对于提升应用的用户体验和功能完善至关重要。通过实践和探索,你可以更熟练地运用这一工具来满足各种数据存储需求。

    Android-Android系统SharedPreferences进行的封装

    在Android开发中,SharedPreferences是系统提供的一种轻量级的数据存储方式,主要用于保存应用程序中的简单配置数据,如布尔值、整型、浮点型、字符串等。由于它的操作简便且易于理解,因此在需要持久化小量数据时...

    android 关于SharedPreferences存储的工具类

    android,SharedPreferences

    Android使用SharedPreferences进行数据存储,缓存ID等数据

    在本文中,我们将深入探讨如何在Android中使用SharedPreferences以及它的优点和注意事项。 一、SharedPreferences的基本使用 1. 获取SharedPreferences对象 要使用SharedPreferences,首先需要获取其对象。通常在...

    android SharedPreferences

    在这个"android SharedPreferences"的主题中,我们将深入探讨SharedPreferences的工作原理、使用方法以及其在实现简单登录功能中的应用。 SharedPreferences是Android提供的一种轻量级的数据存储方式,它以键值对的...

    android SharedPreferences的精彩使用

    在Android开发中,SharedPreferences是一个非常重要的轻量级数据存储机制,用于存储一些简单的配置信息,如用户设置、登录状态等。它提供了一种键值对的形式来保存数据,并且可以跨活动(Activity)共享。本篇文章将...

    Android SharedPreferences SP 工具类

    Android SharedPreferences SP 工具类,存储临时数据用

    SharedPreferences文件在不同应用之间数据共享

    SharedPreferences是Android系统提供的一种轻量级的数据存储方式,主要用于存储应用程序的简单配置信息,如布尔值、整型、浮点型、字符串等基本类型及其数组。通常,SharedPreferences数据是私有的,即每个应用只能...

    SharedPreferences基本使用

    SharedPreferences是...在Android开发中,熟练掌握SharedPreferences的使用对于实现应用的个性化设置和状态保存至关重要。合理利用SharedPreferences可以提升用户体验,同时避免频繁的数据库操作,提高应用性能。

    Android应用源码之SharedPreferences.zip

    这个压缩包“Android应用源码之SharedPreferences.zip”很可能包含了一个示例项目,展示了如何在实际应用中使用SharedPreferences进行数据持久化。 SharedPreferences主要特点是简单易用,它提供了键值对的存储方式...

    android的SharedPreferences详解

    **Android的SharedPreferences详解** SharedPreferences是Android系统提供的一种轻量...总的来说,SharedPreferences是Android开发中的一个基础工具,理解其工作原理和使用方式,对于优化应用性能和用户体验至关重要。

Global site tag (gtag.js) - Google Analytics