android+默认存储,Android 数据存储之SP存储,内部存储,外部存储

Android 数据存储之SP存储,内部存储,外部存储

Android提供了多种数据存储的技术来永久的保存应用数据,以便于开发者能够根据自己的需求来选择合适的数据存储方案,主要有SharedPreferences,内部存储(Internal Storage),外部存储(External Storage),SQLite数据库,网络存储等

一:SharedPreferences

第一步:getSharedPreferences方法获取到SharedPreferences对象。系统会在/data/data/包名/shared_prefs目录下生成一个**文件

bVcPfao

Context.MODE_PRIVATE:默认的文件创建模式。使用该模式创建文件,如果文件目录中已存在同名文件,则新建的文件会覆盖旧文件。并且,文件只能由创建文件的应用(或者与该应用共享同一user ID的应用)所访问。

Context.MODE_APPEND:使用该模式创建文件,如果文件目录中已存在同名文件,则新的内容将直接被添加到旧文件的尾部,而不会新建一个文件来覆盖旧文件。

Context.MODE_WORLD_READABLE:使其他应用对文件具有读的权限。

Context.MODE_WORLD_WIRTEABLE:使其他应用对文件具有写的权限。

注意:从API Level 17以后,MODEWORLDREADABLE和MODEWORLDWRITEABLE已经被弃用。从Android N(即7.x)开始,使用这两个常量会导致SecurityException。这意味着面向Android N和更高版本的应用无法按名称共享私有文件,尝试共享“file://"类型的URI将会导致FileUriExposedException。

第二步:通过SharedPreferences对象的edit()方法获取一个SharedPreferences.Editor对象

第三步:调用putBoolean()(或者putString()、putInt()等,由要保存的数据的数据类型而定)等方法添加值

bVcPfbT

第四步:使用提交commit()方法有返回值boolean类型和apply()无返回值/*获取SharedPreferences对象

1.第一个参数为name:表示文件名,系统会在/data/data/包名/shared_prefs目录下生成一个以该参数命名的.xml文件

2.第二个mode表示创建的模式,建议为0或者MODE_PRIVATE

* */

SharedPreferences sp = getSharedPreferences("test_sp", MODE_PRIVATE);

//获取Editor对象

SharedPreferences.Editor editor = sp.edit();

//根据要保存的数据类型,调用对应的put方法

//以键值对形式添加

editor.putString("data", "我是Rocky");

//提交新值,必须执行否则前面操作无效

editor.commit();

结果:

我是Rocky

第五步:获取SP数据//根据保存时所用的name属性,获取SharedPreferences对象

SharedPreferences sp=getSharedPreferences("test_sp",MODE_PRIVATE);

//根据数据类型,调用对应的get方法,通过键取得对应的值。

String aa=sp.getString("data",null);

Log.d("aa",aa);

结果:

D/aa: 我是Rocky

二:内部存储

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值