- 博客(3)
- 资源 (16)
- 收藏
- 关注
原创 sqlitedatabase is locked
在操作Orm数据库sqlite时, 当存在多线程/多进程并行写时报错。 支持同一时刻多个读, 但同一时刻只能有一个写(不能有读); 简单记: 读写、写写是互斥的, 读读是可以并发的。 因为多线程、多进程可以通过数据库名称操作同一个数据库, 建议只在一个进程中实例单例访问同一个数据库, 从而实现互斥判断逻辑; 什么是写? 增加insert、删除delete、更新up...
2019-09-25 19:49:52 303
原创 Activity渲染完成第一帧时机
Activity第一帧渲染涉及知识点setContentView流程、帧绘制流程和帧率监听等。开始时间:hook ActivityThread的Instrumentation, 得到Activity各个生命周期的开始、结束时间; 参考: Activity的生命周期是谁调用的?注意: ActivityLifecycleCallbacks的回调函数是执行结束后触发的, 无法得到开始执行时间...
2019-09-22 10:25:53 3691
原创 安卓View点击/曝光的监听方式
Android点击、曝光事件的监听分散在代码的各个角落, 不利于开发维护。其实可以将这2种行为收敛到一起, 运行时监听Activity的生命周期,即ActivityLifeCallBack回调; 在onResume或onStart函数里判断当前acitivity是否添加了自定义ViewGroup(暂且命名为TrackerViewGroup), 如果未添加则添加;在onDestory函数中移除...
2019-09-15 19:12:39 2064
SpringCloud接收文件
2017-12-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人