android 数据存储之SharePreference 的几种方式
1. 常见的 getSharedPreferences(String filename,mode)
指定sp文件的名称,生成的文件名为 filename.xml
2.getPreferences(mode)
getPreferences只有一个参数,不能指定文件名,文件名固定为
当前Activity的名字,不包含包名。
3.PreferenceManager.getDefaultSharedPreferences(Context)
该SharedPreferences MODE默认为MODE_PRIVATE,而且生成文件名为
<包名>_preferences.xml
------------------三个mode
MODE_PRIVATE 私有的,不允许其他程序访问该xml文件。
MODE_WORLD_READABLE 其他程序可以读取
MODE_WORLD_WRITABLE 其他程序可以写
这里其他程序如何访问呢?
有两种方式:
第一种,在第二个程序中通过File:File f = new File("/data/data/包名/shared_prefs/xxx.xml");
FileInputStream fis = new FileInputStream(f);//在被访问程序中,MODE_WORLD_READABLE
FileOutputStream fos = new FileOutputStream(f);//在被访问程序中,MODE_WORLD_WRITABLE第二种,通过被访问程序的Context对象。
Context otherContext = createPackageContext(
"com.anjoyo.sharedpreference", CONTEXT_IGNORE_SECURITY);第一个参数为要创建context的包名,第二个参数为创建时忽略安全问题。
SharedPreferences sp = otherContext.getSharedPreferences
("loginsetting", MODE_WORLD_READABLE);
String name = sp.getString("name", "");
String pwd = sp.getString("pwd", "");
android 数据存储之SharePreference 的几种方式的更多相关文章
- Android数据存储:Shared Preferences
Android数据存储之SharedPreferences 在Android系统中提供了多种存储技术.通过这些存储技术可以将数据存储在各种存储介质上, Android 为数据存储提供了如下几种方式:1 ...
- Android数据存储五种方式总结
本文介绍Android平台进行数据存储的五大方式,分别如下: 1 使用SharedPreferences存储数据 2 文件存储数据 3 SQLite数据库存储数据 4 使用Cont ...
- Android数据存储五种方式
1 使用SharedPreferences存储数据:常用于做本地缓存 2 文件存储数据:(1)data/data/<package name>/files目录内 (2)SDCard内 ...
- Android数据存储之SQLCipher数据库加密
前言: 最近研究了Android Sqlite数据库(文章地址:Android数据存储之Sqlite的介绍及使用)以及ContentProvider程序间数据共享(Android探索之ContentP ...
- Android数据存储方式--SharedPreferences
Android数据存储方式有如下四种:SharedPreferences.存储到文件.SQLite数据库.内容提供者(Content provider).存储到网络服务器. 本文主要介绍一下Share ...
- 10、Android数据存储
课程目标: 掌握Android中数据存储的几种方式 熟练使用PreferenceActivity&PreferenceScreen做专业的Setting功能 熟练使用SQLite3来存储数据 ...
- Android - 数据存储 -存储文件
Android使用的文件系统和其他平台的基本磁盘的文件系统很相似.这里将要介绍如何使用File API在Android文件系统中读写文件. File对象适合按顺序读写大量的数据.例如,适合图片文件或者 ...
- 详解Android数据存储技术
前言 学习Android相关知识,数据存储是其中的重点之一,如果不了解数据,那么让你跟一款没有数据的应用玩,你能玩多久呢?答案是这和没有手机几乎是差不多的.我们聊QQ,聊微信,看新闻,刷朋友圈等都是看 ...
- 【Android开发日记】之入门篇(七)——Android数据存储(上)
在讲解Android的数据源组件——ContentProvider之前我觉得很有必要先弄清楚Android的数据结构. 数据和程序是应用构成的两个核心要素,数据存储永远是应用开发中最重要的主题之一,也 ...
随机推荐
- attr()和prop()的区别
引用以为一位大神的文章: http://www.365mini.com/page/jquery-prop.htm http://www.365mini.com/page/jquery-attr-vs- ...
- (转)浅谈ASP.NET报表控件
项目中有报表图形化的需求, 于是开始在网上找第三方chart控件.因时间紧迫,大至确定了几个候选:一.Office带的OWC控件:二.ComponentOne:三.Web Chart.本文将讲解ASP ...
- UVA 719 / POJ 1509 Glass Beads (最小表示法/后缀自动机)
题目大意: 给出一个长度为N的字符串,求其字典序最小的循环同构. N<=10W. 算法讨论: 算法一.最小表示法.定义题. 算法二.后缀自动机. Codes: #include <iost ...
- 学了一个封装的jquery插件,感觉还成
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- C# 操作系统回收站
主要目的:对系统回收站的文件进行操作. 首先添加引用,引入shell32.dll. /// <summary> /// 对回收站的文件进行还原.删除.剪切等操作 /// </summ ...
- EditText判断用户输入完成,然后进行操作解决方案
private Timer timer = new Timer(); private final long DELAY = 1000; // in ms EditText editTextStop = ...
- linux软件安装(rpm,源码编译)
1.rpm(redhat package manager)管理器主要目的在于解决软件的安装.卸载.升级.查询.验证等,例如升级过程中,保留软件的配置文件,安装过程中,检查软件依赖的库文件,以及卸载过程 ...
- C++----练习--string 从文件中一个一个单词的读直到文件尾
从文件中读取单词.并每行显示一个: 1. #include<iostream> #include<string> #include<vector> int main ...
- 简单的html5布局
<!DOCTYPE html><html><meta charset="utf-8"><head><style>html ...
- 添加事件监听兼容IE6-8
IE8一下浏览器不支持addEventListener,用attachEvent取而代之,但是在时间类型前面要加上’on‘,例如click时间在attachEvent中要写成onclick. var ...