android之SharedPreferences进行数据存储

android studio关于sharedPreferences的数据存储 本人写这篇博客是为了复习之前学习的sharedPreferences的存储方法:本人刚学android所以如果我说的哪里有错请位见谅并指出谢谢! 如果是Android应用,Android 平台提供了一个SharedPreferences类,它是一个轻量级的存储类,特别适合用于保存软件配置参数。使用SharedPreferences保存数据,其背后是用xml文件存放数据, 文件存放在/data/ 阅读详情

首先我们来介绍一下SharedPreferences这个接口的作用:

       我们都知道,很多时候我们对于系统依赖的一些参数设置总是会放到一个配置文件中,例如在java中我们通常会用到*.properties文件;在android中,我们也有类似于*.properties的一类文件,而这类文件在android中的对象表现形式,就是SharedPreferences。你可以认为,每个应用中使用的SharedPreferences是该应用文件的一个映射。

      现在,我们知道了,sharedPreferences接口可以让我们存储一些值。

在SharedPreferences的api说明中,我们可以看到这样一段介绍。

翻译如下:

       SharedPreferences接口一般用来访问或修改由方法getSharedPreferences(String,int)返回的设置信息。这里的设置信息都是单例唯一的,这就意味着改设置信息会被所以安装了该APK应用的客户端(手机)所共享。如果我们要想修改这些设置信息,我们则必须要通过SharedPreferences.Editor对象进行修改,至于为什么一定要获取这个Editor对象之后才可以修改呢,原因是这样的,我们前面已经说了,改配置信息会被所有的客户端共享,那就意味着同一时刻可能有好几个客户端要对配置信息中的值进行修改,这很容易出现数据修改混乱的问题,这里通过获取SharedPreferences.Editor对象就是为了保证数据的一致性。注意,到目前为止,SharedPreferences是不支持多进程的,该功能处于待添加状态。

      我们再来看看,该接口中主要的方法有哪些:

 

           

     SharedPreferences包含两个内部类,SharedPreferences.Editor和SharedPreferences.OnSharedPreferencesChangeListener;其中Editor主要在对属性设置进行修改时使用,而OnSharedPreferencesChangeListener则是在属性被修改时触发的一个事件,我们可以在里面做一些额外的动作,如根据新的属性值去触发一些页面的改变了,等等……

 

     

     至于其他的方法,都很简单,一看方法名就知道啥意思了,我就不详细介绍了。现在给大家贴一个应用的例子:

 

先上图:

然后是main.xml

activity的代码:

其他的都为默认。

---------------------------------------------------------------------

最后了,说点废话

SharedPreferences实际上是按照键值对的方式进行数据存储的,如果同一个key被设置了两次值,那么后来的值将会覆盖掉前面的值。实际上,SharedPreferences在后台是使用XML文件的格式进行存储数据的,其存储的目录为/data/data/应用包名称/shared_prefs。

如:

而且SharedPreferences对象对于存储值的格式是有严格要求的,从方法中我们可以看到,只能存储String/int/long/Float/Boolean几种类型的数据。

------------------------------------------------------------------------------------

小技巧:如果我们在当前的activity中想访问另一个activity(如cn.com.abc.activityTest)的SharedPreferences对象,我们应该如何获取呢?

  应该如下获取

 

 

--------------------------------------------------------------

最后粘贴上SharedPreferences的源码,方便查阅。

 

Android 中SharedPreferences的详解 一、SharedPreferences 首选项 介绍 存储软件的配置信息 存储的信息:很小,简单的数据;比如:自动登录,记住密码,小说app(返回后再次进入还是 原来看的页数),按钮的状态。 特点:当程序运行首选项里面的数据会全部加载进内容。 二、SharedPreferences的简单使用 1.布局文件中,写入两个按钮,保存到SP,和从SP中获取数据 布局代码的文件就不再写了。 2.看MainActivity的代码,里面有注释详解 package com.example.spdemo; import 阅读详情

相关推荐

防火墙学习5---虚拟系统和跟系统通过路由表互访

虚拟系统与跟系统互访可分为虚拟系统访问根系统和跟系统访问虚拟系统。

weixin_48030849的博客 1030

Android——SharedPreferences

1. 场景 首先我们来看看,SharedPreferences在什么场景比较适用: SharedPreferences是一种轻量级的存储,数据会写在本地的一个xml文件中,以键值对的形式存在,如果程序卸载,此文件也跟着卸载 以Map形式存放简单的配置参数 可以保存的数据类型有:int、boolean、float、long、String、StringSet。 保存位置:data/data/程序包名/share_prefs 主要用途: 1.保存应用的设置 例如:设置静音,下次进入还是静音 2.判断是否是第

Yawn 7055

E28 LoRa模块透传 定点传输 RSSI测试与MicroPython应用

测试说明 测试模块数:3 测试模式:配置模式和传输模式 如果没有检测到串口,首先检查是否安装串口驱动CH341SER,下载链接,提取码:vaw2 工作模式 模式(0-3) M2 M1 M0 模式介绍 备注 0 传输模式 1 0 0 串口打开,无线打开,连续透明传输 空速支持手动配置和自适应波特率自动调节;连续模式双方波特率必须一致 1 RSSI 1 0 1 串口打开,无线打开,RSSI功能打开 模块每100ms输出RSSI强度值 2 测距模式 1 1 0 保留 - 3 配置模式

GniLAY1022的博客 4242

Android常考问题(2)-SharedPreferences

首先说一下,Android五种存储文件方式:1.文件存储。用保存到文件中的方式进行存储,openFileInput()和openFileOutput()方法来读取设备上的文件。2.SQLite存储。通过数据库存储数据,常用的工具GreenDao,这个以后再看吧。3.ContentProvider存储数据,这一块主要用于数据共享。4.网络存储。5.SharedPreferences存...

zfenger 798

vue3的面试题

vue3的面试题

jiang7701037的博客 6263

【胡学长 带你学 Global Mapper 】如何将影像地图转换为国家2000坐标系

多部门联合开展工作坐标数据不匹配怎么办?Hi,我是胡学长!今天教大家如何利用Global Mapper将谷歌影像数据转换为国家2000坐标系影像数据 。

一起来交流学习吧 1万+

SharedPreferences的用法以及简单理解

一.SharedPreferences的优缺点: 优点: 相对于文件存储来说比较方便,支持多种数据类型的存储。 缺点: 不安全,一般只用来存储配置信息 对数据的操作单一。 在存储上相同的key值存入的数据会被覆盖 二.SharedPreferences的使用方法 存储数据: SharedPreferences.Editor qq_xml=getSharedPreferences("qq_x...

L583701322的博客 9012

从零到一:龙芯杯参赛全攻略(含北理工学长经验PDF、B站培训视频与开源代码合集)

本文详细介绍了龙芯杯全国大学生计算机系统能力大赛的参赛全攻略,包括资源整合、技能树构建、团队协作和避坑指南。提供北理工学长经验PDF、B站培训视频与开源代码合集,帮助参赛者从零基础到站上领奖台。重点解析如何高效获取优质资源、避开新手常见陷阱及构建可落地的学习路径,助力普通学生系统学习CPU设计。

weixin_26802933的博客 538

Android-第十三节02SharedPreferences详解

一、SharedPreferences概述 二、SharedPreferences的使用方法 2.1写数据 2.2读数据 三、SharedPreferences案例-qq登录demo 3.1第一步,创建activity 3.2第二步,设置启动跳转页面 3.3第三步,设置登录界面 3.4存在的两个问题 问题一 问题二

H_xxxxd的博客 2783

【图像去噪】基于加权核范数最小化算法实现图像去噪附matlab代码

1 简介 WNNM是一种约束矩阵奇异值稀疏性的低秩算法,在NNM理论基础上增加了核范数权重,有效利用了自然图像的先验信息并提高了核范数的灵活性. 2 部分代码 ​clcclear allclose allnSig = 100;O_Img = double(imread('Monarch.png'));​randn('seed', 0);N_Img = O_Img + nSig* randn(size(O_Img)); ..

qq_59747472的博客 3114

《UDS协议从入门到精通》系列——图解0x83:访问时间参数

详细介绍UDS协议0x83服务,目标ECU的时序参数设置有哪些注意点?

车载系统攻城狮 2138

【安卓数据存储】——SharedPreferences

【Android】数据存储(一) SharedPreferences详解0.222016.04.29 00:13:33字数 919阅读 13345SharedPreferences介绍 在Android开发中,经常需要将少量简单类型数据保存在本地,如:用户设置。这些需要保存的数据可能一两个字符串,像这样的数据一般选择使用SharedPreferences来保存。 SharedPreference...

qq_43748400的博客 354

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

深入剖析Android中最简单的数据存储方式:SharedPreferences

一. 使用SharedPreferences存储数据 使用 SharedPreferences 保存key-value对的步骤一般是这样: 使用Activity类的getSharedPreferences方法获取到 SharedPreferences 对象,指定文件名和访问权限 获得SharedPreferences.Editor对象,并使用该对象的 putXxx方法保存key-value对。 通过SharedPreferences.Editor的commit方法保存(提交)key-value对。

累计发表博客60余万字,优快云 博客专家、Java 领域优质创作者、华为云享专家、阿里云专家博主。专注分享 Java 优质文章,毕设实战项目开发,全网粉丝10W+ 2680

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Android Studio SharedPreferences数据存储的学习

Android Studio SharedPreferences数据存储的学习 Android Studio 有三种数据存储的方式,作为入门,将上周学习的SharedPreferences形式的数据存储方式进行总结,发布在我的blog上 首先,我也是作为了解,先入门学习了一些相关知识 如下图所示,一般的使用方式是 1.获取SharePreferences对象,同时指定名称和访问权限 2.获取SharePreferences的编辑器对象,其中Editor是sharePreferences中的一个类 3.通

farzena的博客 3061

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Android数据存储之SharedPreferences

SharedPreferences是一种轻量级的数据存储方式,采用键值对的存储方式。 SharedPreferences**只能存储少量数据**,大量数据不能使用该方式存储,支持存储的数据类型有boolean、float、int、long、string。 SharedPreferences**存储到一个XML文件中的**,路径在**/data/data/<packagename>/shared_prefs/**下,文件名以及存储后面详细讲述

qq_41466437的博客 1537

Android中的5种数据存储方式之——SharedPreferences

Android中的5种数据存储方式之——SharedPreferences简介 SharedPreferences是Android平台上一个轻量级数据存储方式,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保到SharedPereferences中;当Activity重载,系统回调方法 onSaveInstanceState时,再从Shar

默 4783

安卓数据存储之SharedPreferences存储

(此博文使用的工具为Eclipse) 首先介绍一下SharedPreferences是使用键值对的方式来存储数据的,每次存储数据的时候需要给这条数据提供一个对应的键,这样读取数据的时候就可以根据这个键吧对应的值取出来。 使用SharedPreferences来进行数据持久化要比使用文件方便很多。 1、将数据存储到SharedPreferences中: 要想使用SharedPreferenc...

Imfondof 719

Android数据存储——SharedPreferences

Android数据存储——SharedPreferences 一、数据存储选项:Data Storage ——Storage Options【重点】 1、Shared PreferencesStore private primitive data in key-value pairs.保存简单的键值对数据。2、Internal StorageStore priv

luffy的专栏 1859

Android数据存储五大方式之-SharedPreferences

第一个值使得SharedPreferences存储的数据只能在本应用内获得,第二个和第三个。值分别使得其他应用可以读和读写本应用SharedPreferences存储的数据。(1)参数一为要保存的xml文件名,不同的文件名产生的对象不同,但同一文件名可以产。此处注意指定参数一时,不用加xml后缀,由。Key1是要查询的键,返回对应的值,当键不存在时,返回key2作为结果。可以实现数据的更新只需添加同键的键值对,和操作Map集合一样。删除参数部分键的键值对。(参数一,参数二);

2501_90212852的博客 666

Android 数据存储笔记一 SharedPreferences数据存储

问题一:为什么要引入数据存储? 所有的应用程序都必然会涉及数据的输入,输出,Android应用也不例外,应用程序的参数,设置,程序运行状态数据这些都需要保存到外部存储器上,这样系统关机之后数据才不会丢失。 问题二:何时使用SharedPreferences存储数据? SharedPreferences主要用来保存键值对形式的配置信息格式的数据。 一.SharedPrefer

一棵开花的树 503

Android 数据存储 (一)SharedPreferences

这篇主要讲一下平常用到的数据存储SharedPreferences,结合demo说下其用法。 1 简介 SharedPreferences是Android提供的一种存储数据的机制,用于存储少量数据,数据类型包括(boolean 、int、long、float、string),主要用于存储应用的配置信息,例如:用户名、密码、是否开启震动、音乐等。。 它实际上是以键值对的形式储存在xml文件

奋斗的菜鸟ing 1575

android数据存储之SharedPreferences详解。

文章目录1.概念2.SharedPreferences应用2.1获取SharedPreferences对象的方法2.2存储数据实现 1.概念 1.它是一种轻量级的数据存储方式,采用键值对的存储方式。 2.它只能存储少量数据,支持存储的数据类型有booleans, floats, ints, longs, and strings。 3.存储到一个XML文件中的,路径在/data/data//shared_prefs/下。 4.默认存储路径:/data/data//shared_prefs 操作模式:MODE_

深耕安全技术研究 3052

Android数据存储 SharedPreferences及SDCard

一、数据存储选项:Data Storage ——Storage Options 1、Shared Preferences Store private primitive data in key-value pairs. 保存简单的键值对数据。 2、Internal Storage Store private data on the device memory. 在手机内存中保存不对外...

bobo的博客 837

15、Android数据存储——SharedPreferences及SDCard

Android数据存储——SharedPreferences及SDCard 一、数据存储选项:Data Storage ——Storage Options【重点】 1、Shared PreferencesStore private primitive data in key-value pairs.保存简单的键值对数据。2、Internal StorageS

yangzhenyutmac的博客 1531
上一篇: 第四课:android数据相关---sharedPreferences
下一篇: android之SQLite数据库应用(一)
chenzheng_java
博客等级 码龄17年 436粉丝 106原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值