IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android——使用SharedPreferences进行简单存储 -> 正文阅读

[移动开发]Android——使用SharedPreferences进行简单存储

使用SharedPreferences进行简单存储

? ? ? ? 1、简介

? ? ? ? 2、使用方法与步骤

? ? ? ? 3、案例:模拟自动登录功能

Android系统提供了多种数据存储方法。例如使用SharedPreferences进行简单存储、文件存储、SQLite数据库存储以及Content Provider共享数据等。在这里我们只来讲一下SharedPreferences。

1、简介

SharedPreferences存储是一种轻量级的数据存储方式,它屏蔽了对底层文件的操作,通过为程序开发人员提供简单的编程接口,实现以简单的方式对数据进行永久保存。这种方式主要对少量
的数据进行保存,比如应用程序的各种配置信息(是否打开音效、是否打开震动等等)、玩家游戏积分、应用主题等进行保存。

2、使用方法与步骤

2.1、获得SharedPreferences对象

SharedPreferences接口位于android.content包中,用于使用键值(key-value)对的方式来存储数据。该类主要用于boolean、float、int、long、String等基本类型。在应用程序结束后,数据仍旧会保存。数据以XML文件格式保存在Android手机系统下的”/data/data/<应用程序包名>/shared_prefs“目录中,该文件被称为SharedPreferences(共享的首选项)文件。

(1)使用getSharedPreferences()方法获取

如果需要多个使用名称来区分的SharedPreferences文件,则可以使用getSharedPreferences()方法获取

????????getSharedPreferences(String name,int mode)

name: 共享文件的名称,该文件为XML格式。对于使用同一个名称获得的多个SharedPreferences引用,其指向同一个对象。

mode: 用于指定访问权限,它的参数值可以是MODE_PRIVATE (表示只能被本应用程序读和写,其中写入的内容会覆盖原文件的内容)、MODE_MULTI_PROCESS(表示可以跨进程、跨应用读取)。

(2)使用getPreferences()方法获取

如果Activity仅需要一个SharedPreferences文件,则可以使用getPreferences()方法获取。因为只有一个文件,所以不需要提供名称。

????????getPreferences(int mode)?? ?// mode同上

2.2、向SharedPreferences文件存储数据

?向SharedPreferences文件中存储数据的步骤为(1)、(2)、(3)。

(1)、调用SharedPreferences类的edit()方法获得SharedPreferences.Editor对象。可以使用下面代码获得私有类型的SharedPreferences.Editor对象。

????????SharedPreferences.Editor ?editor=getSharedPreferences("mr",MODE_PRIVATE).edit();

(2)、向SharedPreferences.Editor对象中添加数据。

???????editor.putString("username",username);?? ??? ?//添加字符串数据
? ? ? ?editor.putBoolean("status",false);?? ???????????????//添加布尔型数据
? ? ? ?editor.putInt("age","20");?? ??? ?????????????????????????//添加整型数据

(3)、使用commit()方法提交数据,从而完成数据存储操作。

????????editor.commit();

2.3、读取SharedPreferences文件中存储的数据

读取时主要使用SharedPreferences类的getXxx()方法。下面分别实现获取String、Boolean和int类型的值。

????????SharedPreferences ?sp=getSharedPreferences("mr",MODE_PRIVATE);
? ? ? ? String username =sp.getString("username","mr");
? ? ? ? Boolean status =sp.getBoolean("status",false);
? ? ? ? int age =sp.getInt("age",18);

3、案例:模拟自动登录功能

除了activity_main布局外再创建一个布局second当作登录后的页面,同时创建一个Second.java文件。

activity_main布局(部分):

MainActivity完整代码:

?Second.java代码:

运行截图:

?

注:运行本案例,在成功登录后,保存用户名和密码的mrsoft.xml文件将被保存在”/data/data/<应用程序包名>/shared_prefs“目录下。由于系统安全问题该文件无法查看,该文件只能在本应用中读取。?

?

?

?

?

?

?

????????

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-08-04 11:19:40  更:2021-08-04 11:19:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/6 3:48:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码