SharedPreferences(2)

来源:互联网 发布:mac修改快捷键设置 编辑:程序博客网 时间:2024/05/01 02:35



利用shared preferences存储键值对                            SharedPreferences 提供了一种存储键值对的方法,可以用于存储原生数据类型(boolean, float, int, long, String)。      这些数据在用户工作阶段一直被保持,即便应用被关闭也还是保持。



       

    所以可以用来保存一些数据,比如用户设定的字体,背景,用户名等,

    在下一次打开应用时,不用重新设定这些数据。

                                  1. 获得SharedPreferences的引用                            获得SharedPreferences对象可以使用下面两种方法:           getSharedPreferences()这是 Context 中的方法,可以通过第一个参数指定你需要获得的文件名。     

  getPreferences()这是 Activity 中的方法,获取Activity中默认的shared preference文件,

    这个文件是Activity私有的,所以不需要指定名字。

    

                                2.向Shared Preferences写数据                           

  向Shared Preferences写数据,首先需要用edit()方法建一个 SharedPreferences.Editor象,然后象的putXXX()

    方法存储键,键都是String型,是XXX所对应的数据型(boolean, float, int, long, String, String集合)。

      最后需要调用commit() 方法把改变从Editor对象转移到SharedPreferences对象。                                             3.从Shared Preferences读取数据                          

  读取数据时需要调用SharedPreferences对象的getXXX()方法,来获得给定键(第一个参数)对应的值,如果给定键不存在,

     则会返回给定的默认值(第二个参数)。

4)

通过SharedPreferences 存储数据的四中访问权限         Context.MODE_PRIVATE:           为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文    件的内容,如果想把新写入的内容追加到原文件中。可以使用Context.MODE_APPEND。                    Context.MODE_APPEND:           模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。                     Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件。   MODE_WORLD_READABLE: (从API 17 开始已经过期)        表示当前文件可以被其他应用读取;          MODE_WORLD_WRITEABLE: (从API 17 开始已经过期)        表示当前文件可以被其他应用写入。                        

通过MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE共享数据是不安全的,如果需要在不同的应用程序之间

共享数据,则可以通过其他的方式,比如ContentProvider ,BroadcastReceiver等。




0 0
原创粉丝点击