在android当中,SharedPreferences是一种轻量级数据存储,以键值对形式操作。
SharedPreferences文件保存在/data/data/<packagename>/shared_prefs目录下,即一个xml文件。
支持3种访问模式
●MODE_PRIVATE 私有、新内容覆盖原内容
●MODE_APPEND 新内容追加到原内容
●MODE_WORLD_READABLE 全局读、允许其他应用程序读取
●MODE_WORLD_WRITEABLE 全局写、允许其他应用程序写入,会覆盖原数据 这点没验证通过,其他程序不能修改,只能读
定义SharedPreferences
SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME,MODE); //PREFERENCE_NAME与Android系统中保存的文件名相同
If a preferences file by this name does not exist, it will be created when you retrieve an editor (SharedPreferences.edit()) and then commit changes (Editor.commit()). 第一次调用该函数并不会立即在系统创建xml文件,当获取editor并commit时,xml创建。
SharedPreferences修改
editor.putString("Name","Tom");
editor.putInt("Age",20);
editor.putFloat("Height",);
editor.commit(); //调用Commit()函数保存修改内容
获取SharedPreferences内容
SharedPreferences sharedPreferences=getSharedPreferences(PREFERENCE_NAME,MODE);//通过getSaredPerences取SharedPreferences
String name=sharedPreferences.getString("Name","Default Name"); //第二个参数为无法获取时的缺省值
int age=sharedPreferences.getInt("Age",20);
float height=sharedPreferences.getFloat("Height",);
访问其他应用程序的SharedPreferences需要的3个条件:
●访问模式为全局读或全局写
●需要知道共享者的包名和SharedPreferences名称,通过Context获取对象
●需要知道每个数据的名称和数据类型以读取数据
try{
c=this.createPackageContext(PREFERENCE_PACKAGE,Context.CONTXT_IGNORE_SECURITY);
}catch(NameNotFoundException e){
e.printStackTrace();
}
SharedPreferences sharedPreferences=c.getSharedPreferences(PREFERENCE_NAME,MODE);
- getPreferences():获取到作用域是本Activity的preference
- getSharedPreferences():获取到作用域是本应用程序的preference
- getDefaultSharedPreferences():获取到全局作用域的preference
以下示例让SharedPreferences保存用户选择的值:
相关推荐
DataStore 以异步、一致的事务方式存储数据,克服了 SharedPreferences(以下统称为SP)的 一些缺点。 DataStore 基于 Kotlin 协程和 Flow 实现,并且可以对 SP 数据进行迁移,旨在取代 SP 。 DataStore 提供了两种...
嵌入式Android项目设计与开发 第六章 数据存储 ——SharedPreferences 2 SharedPreferences 键值对概念: 某一个数据都由一个键和一个值构成,键代表数据的名称,它是全局唯一的。具体的数据内容存放在值中。 键值对...
Android项目开发中使用的数据存储方式有:网络存储、sqlite存储、File存储和SharedPreferences存储,四种存储方式对应的Demo别人是NetworkDemo、SqliteDemo、FileDemo和SharedPreferencesDemo,根据应用的场景选择...
SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能...
sharedpreferences Demo
SharedPreferences文件在不同应用之间数据共享
android应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demoandroid应用SharedPreferences_Demo...
一个SharedPreferences工具类 在工程根目录build.gradle添加jitpack: allprojects { repositories { maven { url "https://jitpack.io" } } } 在使用AnyPref的模块中添加: dependencies { compile '...
利用SharedPreferences设置初始密码,并修改密码。详见http://blog.csdn.net/chenfengdejuanlian/article/details/46331031
使用SharedPreferences保存数据
SharedPreferences存取list集合
使用SharedPreferences保存key-value对
SharedPreferences可以让不同程序之间的数据进行共享,当两个应用程序之间数据需要传递或者共享时,可以使用这个方法。本文会使用两个例子SharePreferenceWrite和SharePreferenceRead,前者为一个写...
介绍了SharedPreferences存储复杂的对象源码!
android学习SharedPreferences使用demo源代码
Android SharedPreferences应用 实现本地注册登陆 功能简单易懂(实例) http://blog.csdn.net/h1028962069/article/details/9129851 文章代码
Android自学笔记-8-Android数据存储1:文件、SharedPreferences和获取sd卡信息
SharedPreferences是Android提供的一个轻量级存储类,经常用于保存软件设置参数。存放的格式为xml,文件存放在 /data/data/<package name>/shared_prefs下。