现在的位置: 首页 > 综合 > 正文

使用SharedPreferences进行数据存储

2013年10月08日 ⁄ 综合 ⁄ 共 1323字 ⁄ 字号 评论关闭

1、SharedPreferences介绍

  主要用于软件参数设置功能,用xml方式保存,保存的位置是在/data/data/包名/shared_prefs

2、保存参数

  SharedPreferences preferences= getSharedPreferences("tjppre", Context.MODE_WORLD_READABLE);

  Editor editor=preferences.edit();//获取编辑器

  editor.putString("netName", netName);

  editor.putInt("age", Integer.parseInt(age));

  editor.commit();//提交

3、获取参数

  SharedPreferences preferences= getSharedPreferences("tjppre", Context.MODE_PRIVATE);//文件模式只有在创建的时候才使用

  String netName=preferences.getString("netName", "");

  int age=preferences.getInt("age", 20);

4、获取别的应用的SharedPreferences

  //构造其他应用的上下文对象

  Context context=this.getContext().createPackageContext("com.tjp", Context.CONTEXT_IGNORE_SECURITY);//构造根据包的创建上下文对象  忽  略安全检查

  SharedPreferences preferences= context.getSharedPreferences("tjppre", Context.MODE_PRIVATE);

  String netName=preferences.getString("netName", "");

  int age=preferences.getInt("age", 20);

之前的几篇文章描述了在Android应用中存储数据的主要三种方式:SharedPreferences,内部存储和外部SD卡存储。究竟在你的应用中采用那种方式呢?下面有一些建议:

1. 如果你有键值对形式的数据,使用SharedPreferences对象。举个例子,如果你想存储用户的一些属性,比如名字,肤色,生日或最后的登陆日期,那么SharedPreferences对象就是存储这些数据的最佳方式。

2. 如果你想存储某些特殊的数据,那么使用内部存储将是一个好的选择。举个例子,你的应用(例如RSS阅读器)可能会从网络上面下载一些图片用于显示。在这种情况下,保存图片到内部存储将是一个很好的解决方案。也有可能,你要存储用户自己创建的数据,比如用户保存他自己写的一些笔记之类的。

3. 有些时候,你需要和其他用户共享你的应用数据。举个例子,你可能会开发这样一种软件,它去记录用户曾经去过的地方的坐标,同时,你也能把这些数据与其他用户共享。这种情况下,把你的文件保存到SD卡上,这样一来,就可以很容易地把这些数据传送给其他的设备,以便以后的使用。

抱歉!评论已关闭.