1、Android的存储机制(这篇文章http://blog.csdn.net/fwwdn/article/details/7514831)
Android为我们提供了4种数据存储方式,但由于存储的这些数据都是某个应用程序私有的,所以它又为我们提供了一种在不同应用程序之间共享数据的机制,即ContentProvider。
Android的4种数据存储方式:Shared
Preferences、Files、SQLite、NetWork,
Android的共享机制:即四大组件之一的 Content Provider机制。
2、android dvm的进程和linux的进程(http://zhidao.baidu.com/link?url=wUxRJUSbFZS4tN4MApL6lO-QOUYJxJ4jrWa1ZL6KcIdPYBtr0OX_pP_RrdMiaj0X_dulxiJgc--lWW_41HMbi_)
DVM指dalivk的虚拟机。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念。
3、android assets
Android 系统为每个新设计的程序提供了/assets目录,这个目录保存的文件可以打包在程序里。/res 和/assets的不同点是,android不为/assets下的文件生成ID。如果使用/assets下的文件,需要指定文件的路径和文件名。
在文件中/assets 中建立/image子目录,将/res/drawable下的icon.png子目录拷贝到该目录中。在/assets子目录中建立readme.txt文件,文件中输入文本“hello,world!!!”。
AssetManager assetManager = getAssets();
String[] files files = assetManager.list("image");
firstField = (EditText) findViewById(R.id.firstId);
firstField.setText(Integer.toString(files.length)+"file.File name is"+ files[0]);
InputStream inputStream = assetManager.open("readme.txt");
4、android /res/xml、raw(http://blog.csdn.net/hbhhww/article/details/8157749)
/res/xml
这里可以用来存储xml格式的文件,并且和其他资源文件一样,这里的资源是会被编译成二进制格式放到最终的安装包里的,我们也可以通过R类来访问这里的文件,并且解析里面的内容
XmlResourceParser xml = getResources().getXml(R.xml.data);
在这里,我们用资源类的getXml方法,返回了一个xml解析器,这个解析器的工作原理和SAX方式差不多
/res/raw
这里的文件会原封不动的存储到设备上,不会被编译为二进制形式,访问的方式也是通过R类
((TextView)findViewById(R.id.txRaw)).setText(
readStream(getResources().openRawResource(R.raw.rawtext)));
5、android sqliteopenhelper