android数据储存之存储方式
来源:互联网 发布:学英语app 知乎 编辑:程序博客网 时间:2024/05/22 07:58
可以将数据储存在内置或可移动存储,数据库,网络,sharedpreference。
android可以使用Content provider来使你的私有数据暴漏给其他应用程序。
一.sharedpreference
得到sharedpreference的两种方法:
1.getSharedPreferenced():使用这个方法你可以定义多个preference文件
2.getPreferenced():只创建一个preference文件
sharedpreference不是严格用来储存“用户配置”的,比如说储存用户的铃声。若你的应用程序对创建用户配置感兴趣,可以使用PreferenceActivity、
二.内置储存
创建并写一个文件的步骤:
使用openFileOutPut得到FileOutputStream,通过这个流来写数据。
从内置储存读数据步骤:
使用openFileInput得到FileInputStream,通过这个流来读数据。
如果你想在编译的时候在你应用中保存一个静态的文件,可以保存在res/raw/路径,通过调用openRawResource传入R.raw.<filename>打开。
如果你想缓存数据而不是将数据持久化,那当你想缓存数据时可以使用openCacheDir()来打开一个内部储存空间的文件。
当设备的内置储存空间不足时,Android会删除这些文件来恢复空间。然而你不必主动删除这些文件,但是你应该对缓存文件占的空间大小做个限制,不如说1M.
其他有用的方法:
getFileDir():得到你内置文件的绝对路径。
getDir()创建(或打开一个存在)的路径。
deleteFile()删除一个内置文件
fileList()返回当前应用程序中所有内置文件列表
三.外部储存
如果你既想write外部储存,又想read外部储存,只需请求 WRITE_EXTERNAL_STORAGE
的权限。
<manifest ...> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" /> ...</manifest>(当版本低于18的使用添加权限)
从Android4.4开始,若想使用应用程序的私有文件不许要读写外部储存的权限。
可以通过将文件放入Music/,Pictures/,RingTone/来和其他应用分享这个文件。
若你不想系统的多媒体浏览器可以浏览你的多媒体文件,可以在你的文件夹中添加.nomedia的文件。
得到公共文件夹的方法 getExtenrnalStoragePublicDirectory()将参数DIRECTORY_MUSIC/DIRECTORY_PICTURES/DIRECTORY_RINGTONE传入。
以下为在公共图片文件夹下添加一个相册:
public File getAlbumStorageDir(String albumName) { // Get the directory for the user's public pictures directory. File file = new File(Environment.getExternalStoragePublicDirectory( Environment.DIRECTORY_PICTURES), albumName); if (!file.mkdirs()) { Log.e(LOG_TAG, "Directory not created"); } return file;}你可以使用getExtenrnalFileDir()在外置储存中得到私有多媒体储存路径
当用户删除你的应用的时候这些文件将会被删除
这些文件不会被系统的多媒体浏览器发现但是对于有READ_EXTERNAL_STORAGE权限的应用是可access的。
通过getExternalCacheDir()来得到外置储存空间的缓存区。当应用程序被卸载时,这些文件也将被删除。
需要仔细管理缓存区,删除那些在你app生命周期不再使用的缓存
四.使用数据库
五.使用网络
- android数据储存之存储方式
- Android 数据储存的方式之本地数据库储存
- Android五大储存方式之文件存储
- Android系统储存方式之文件储存
- Android的数据储存方式
- Android的数据储存方式
- Android:储存方式之SharePreferences
- Android:储存方式之SharePreferences
- Android数据存储方式之:文件存储
- Android数据之SharedPreferences储存
- Android下的数据储存方式
- Android中数据储存的方式
- Android--数据储存方式(5种)
- Android中常用的数据储存方式
- android数据的5中储存方式
- Android杂谈之Android数据存储方式
- android数据存储方式之二 文件存储:内部存储
- Android数据存储方式之SharedPreferences
- 每天学一点算法-Dijkstra算法
- 长整数文本到时间戳
- hdu 1175 连连看
- 打开文件目录~
- 开源天气接口网站
- android数据储存之存储方式
- 实现一个简单的tab选项卡
- Mac Air USB接口 失效/不起作用 的修复方式
- 排序总结之快速排序
- 02_01.img标签
- ReadProcessMemory
- css 兼容写法
- Ubuntu 14.04 小技能!
- 走进C++程序世界------异常处理