android应用的数据应该保存到哪儿
王永超王永超嫖娼
做android app开发会涉及到不同数据的保存,比如数据缓存,客户登陆信息保存,客户状态的保存等等。
那针对这不同的数据我们应该保存在什么地方呢?
1、应用卸载也不会删除的数据
直接在sdCard根目录创建一个文件夹,保存数据。
优点:保存时间长,应用卸载也不会被删除。缺点:任何人都可以访问这个目录。
2、跟随应用的存在而存在的数据
Context.getExternalFilesDir()方法可以获取到 SDCard/Android/data/你的应用的包名/files/
以上这个目录会随着应用卸载而删除,这个目录对应android手机 设置->应用->应用详情里面的”清除数据 这个选项,用户点击这个时,这个目录数据就会被删除。
Context.getFilesDir()可以获取到"/data/data/<package name>/files" 这种方法获取到的是应用的安装目录下的files目录。
3、应用的缓存目录 系统会自动定时清理,
Context.getExternalCacheDir()方法可以获取到 SDCard/Android/data/你的应用包名/cache/
以上这个目录是 Sd卡的缓存目录,可存放临时缓存数据 这个目录对应 设置->应用->应用详情里面的”清除缓存,用户点击这个选项时会清除这个目录下的数据
Context.getCacheDir可以获取到"/data/data/<package name>/cache" 应用安装目录的缓存目录
以上这个文件里面的数据在设备内存不足的时候,会被系统删除数据。注意:你不能依赖系统帮你删除这些文件,当这个文件夹里面的数据超过1MB的时候,系统会删除这个文件夹里面的数据
http://blog.csdn.net/yihui823/article/details/6722456
android应用的数据应该保存到哪儿的更多相关文章
- Android开发学习---android下的数据持久化,保存数据到rom文件,android_data目录下文件访问的权限控制
一.需求 做一个类似QQ登录似的app,将数据写到ROM文件里,并对数据进行回显. 二.截图 登录界面: 文件浏览器,查看文件的保存路径:/data/data/com.amos.datasave/fi ...
- Android中突发情况Activity数据的保存和恢复
Android中突发情况Activity数据的保存和恢复 写在前面:在我们的APP使用的过程中,总有可能出现各种手滑.被压在后台.甚至突然被杀死的情况.所以对APP中一些临时数据或关键持久型数据,就需 ...
- Android中数据的保存
1. 概述 在Android中有以下几种保存数据方式: 1). 使用sharedPreference去保存:只有应用程序自己可以访问 2). 保存在应用程序私有的文件夹下:只有应用程序自己可以访问 3 ...
- Android Studio 之 SharedPrefences 数据持久性保存
SharedPreferences 会在应用包目录中生成一个xml文件,将数据保存在里面 可以实现数据持久性保存. 创建的数据,保存在 Data -> Data -> 包名 -> s ...
- Android Studio 之 数据存活【2】,返回桌面切换回来,内容还保存着
使用ViewMode SavedState来使得ViewModel在系统杀死后台进程的时候得以存活. 本集使用到的库,需要在gradle中添加: implementation 'androidx.li ...
- android中的数据存取-方式一:preference(配置)
这种方式应该是用起来最简单的Android读写外部数据的方法了.他的用法基本上和J2SE(java.util.prefs.Preferences)中的用法一样,以一种简单. 透明的方式来保存一些用户个 ...
- 67.Android中的数据存储总结
转载:http://mp.weixin.qq.com/s?__biz=MzIzMjE1Njg4Mw==&mid=2650117688&idx=1&sn=d6c73f9f04d0 ...
- Android网络之数据解析----SAX方式解析XML数据
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- Android 与 Webservice 的快速保存
前面写了一篇android对sqllite的快速保存博客,今天我们来看看android与webservice的交互,相信很多有经验的人自然就想到了soap.但是如果在小型项目中,具有大材小用之嫌.实际 ...
随机推荐
- iOS -Swift 3.0 -UILabel属性大全
昨天研究了一下苹果近两年新出的Swift语言,感觉学起来并不是很吃力,毕竟自己有过Objective-C的语言功底,所以各方面的属性控件还是一眼就可以认出的,只是Swift的写法与Objective- ...
- LuaExpat笔记
xml xml是一种格式化数据交换语言, 适用于在网络上不同应用会话. http://www.xml.com/pub/a/98/10/guide0.html exPat 一种C语言实现的 xml 文档 ...
- 收集一些java相关的文章
有些文章看了,以后想再看已经忘了在哪里了.故在此一一记录下那些值得看的文章. 1:如何确定Java对象的大小 中文版本 :http://article.yeeyan.org/view/104091/6 ...
- c#操作Excel时,抛出异常:“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”
我们开发环境下,使用excel导入数据到数据库中,编译的软件起初是x86 方式,起初并未发现什么问题,一切很正常: 程序该进的过程: 后来导入文件一次就要读取几百G的数据导入数据库中,使用编译的X86 ...
- Three.js基础探寻九——网格
在学习了几何形状和材质之后,我们就能使用他们来创建物体了.最常用的一种物体就是网格(Mesh),网格是由顶点.边.面等组成的物体:其他物体包括线段(Line).骨骼(Bone).粒子系统(Partic ...
- Keepalived 安装与配置
下载:http://www.keepalived.org/ what is keepalived? Keepalived is a routing software written in C. The ...
- configs for postgresql restart and postgresql reload
-- configs requiring postgresql restart select name, setting, context from pg_settings where context ...
- Leetcode: UTF-8 Validation
A character in UTF8 can be from 1 to 4 bytes long, subjected to the following rules: For 1-byte char ...
- zjuoj 3610 Yet Another Story of Rock-paper-scissors
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3610 Yet Another Story of Rock-paper-sc ...
- php-引号中出现$
当双引号中包含变量时,变量对应的值会与双引号中的内容连接在一起: 当单引号中包含变量时,变量会被当做字符串输出. 慕课网,I love you!慕课网,$love