首先,明确一个概念,Android内部存储和外部存储并不是所谓的手机自带内存是内部存储,SD卡是外部存储云云。 Android对内部存储和外部存储不是在物理上区分的,而是在逻辑上区分的。 一、概念 内部存储是指系统内部存储空间,在逻辑上用目录来区分的话就是data目录下的文件夹 除此之外data目录下有app目录存放系统下载的apk信息,有data目录存放各种文件 例如: sharedPreferenced存储的文件在 /data/data//shared_prefs/目录下。 Sqlite存储的文件在 /data…

2020年3月19日 0条评论 0点热度 阅读全文

RecyclerView 存在的一个明显的 bug 一直没有修复: java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid item position… 重现的方法是:使用 RecyclerView 加官方下拉刷新的时候,如果绑定的 List 对象在更新数据之前进行了 clear,而这时用户紧接着迅速上滑 RV,就会造成崩溃,而且异常不会报到你的代码上,属于RV内部错误。初次猜测是,当你 clear 了 list 之后,这时迅速上滑,…

2018年12月24日 0条评论 3点热度 阅读全文

在进行数据库查询时,有完整查询和模糊查询之分。 一般模糊查询语句如下:   SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,% :表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE '%三%' 将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。 另外,如…

2018年8月26日 0条评论 3点热度 阅读全文

没啥诀窍,只需保证几个线程都是用的一个SQLiteDataBase对象就行了。 如果我们非要在不同线程中用两个或更多的SQLiteDataBase对象呢,当然这些SQLiteDataBase对象所操作的是同一个数据库,也就是同一个db文件,这个就是这篇博客的重点了 (ps:使用到的代码将在博文结尾贴出) 第一种情况:一个SQLiteDataBase对象不同线程 两个子线程执行修改数据库操作,三个子线程执行查询数据库对象, writethread = new SQLWritethread("write",true,s…

2018年3月17日 0条评论 3点热度 阅读全文