android性能优化
文章平均质量分 70
飞雨的夏天
这个作者很懒,什么都没留下…
展开
-
自定义键盘之禁止EditText点击弹出系统软键盘
在点击EditText的时候它会获得焦点并弹出软键盘,EditText继承成自TextView,只要和点击事件有关的那么必定会走view的分发事件并分发到onTouchEvent,代码如下所示:public boolean onTouchEvent(MotionEvent event) { final int action = event.getActionMasked(); if (mEditor != null) { mEditor.onTo原创 2021-04-07 17:12:18 · 1661 阅读 · 1 评论 -
Glide框架加载gif动态图优化
Glide图片库,相必大家用的不能再熟了,但是不知道小伙伴们有没有遇到gif加载卡顿,或者gif它变成了静态图,它不动了,这个是没法忍受的,glide全程都是java写的所以在加载gif的时候占用的内存就比较大,应用层渲染解析gif源文件相对于底层又比较慢,最终导致卡着不动了,这个是无法忍受的,所以怎么对gif这一块进行优化呢,既然进程的堆内存不能用太多,那么是否可以将gif的内存占用放在直接内存,也就是用c或c++去申请直接内存去保存gif产生的每一帧动态图,让后用c或c++底层语言去渲染gif文件。原创 2020-12-01 16:36:03 · 1965 阅读 · 1 评论 -
是时候告别SharedPreferences,Jetpack组件库中的DataStore原理详解
干android的小伙伴们都知道SharedPreferences偏好参数的用法,它主要是用来存储用户的一些信息,比如用户账号、用户设置中的个人喜好,用起来还不错,但是如果偏好参数保存的过多的,加载的速度就会变慢,因为每次重新启动app都需要将文件中所有的键值对内容读到内存中,这就影响了速度,另一方面,改变偏好参数的时候是修改的本地内存,所以进程是不共享的。你想在偏好参数中保存大量数据吗?那么是时候将你的项目中的偏好参数去掉了,是时候换成Jetpack组件库中的DataStore如图:再配合kotl原创 2020-11-30 17:15:30 · 1377 阅读 · 0 评论