2----IOS、Android数据存储方式

IOS
  由于ios每个应用都有一个自己的沙盒环境,其所有数据都是存储在这个环境之中,每个应用程序直接不允许交互数据,常见存储方式如下:
    SQLite数据库:
       SQLite是一个轻量级的数据库,支持基本SQL语法,ios系统自带开发库libsqlite3.0.dylib,可直接操作sql语句,参考(http://blog.csdn.net/totogo2010/article/details/7702207)
       另外在ios平台有第三方库,对原始SQLite进行了简单封装,试用更加方便,包括Sqlitepersistentobjects,FMDB,其中FMDB用的多一点,参考(http://li-bonan.blog.163.com/blog/static/13556477020124231203985/ 和Tmart项目代码)
       创建的sql库文件可用火狐浏览器插件方便查阅及更改(http://blog.sina.com.cn/s/blog_721948c20100u8hz.html )
     NSUserDefault:ios自创的数据保存类,用于一些小数据,如一些简单的配置等信息,本质也是存储在硬盘上的一个文件
     File直接操作:使用单例NSFileManager,参考()
     keychain 钥匙串
     http://blog.csdn.net/jcp312097937/article/details/17791247
Android
     由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。

  SQLite: SQLite是一个轻量级的数据库,支持基本SQL语法,是常被采用的一种数据存储方式。Android为此数据库提供了一个名为SQLiteOpenHelper的类,子类化它,封装了一些操作数据库的API。

  SharedPreference: 除SQLite数据库外,另一种常用的数据存储方式,其本质就是一个xml文件,常用于存储较简单的参数设置。

  File: 即常说的文件(I/O)存储方法,常用语存储大数量的数据,但是缺点是更新数据将是一件困难的事情。

  ContentProvider: Android 系统中能实现所有应用程序共享的一种数据存储方式,由于数据通常在各应用间的是互相私密的,所以此存储方式较少使用,但是其又是必不可少的一种存储方式。 例如音频,视频,图片和通讯录,一般都可以采用此种方式进行存储。每个Content Provider都会对外提供一个公共的URI(包装成Uri对象),如果应用程序有数据需要共享时,就需要使用Content Provider为这些数据定义一个URI,然后其他的应用程序就通过Content Provider传入这个URI来对数据进行操作。

 

PS: URI由3个部分组成:"content://"、数据的路径、标识ID(可选)。

Android的参考:http://www.cnblogs.com/wisekingokok/archive/2011/09/13/2174484.html
posted @ 2013-11-01 15:09  SEC.VIP_网络安全服务  阅读(139)  评论(0编辑  收藏  举报