Android性能优化
文章平均质量分 91
汉堡怪兽
这个作者很懒,什么都没留下…
展开
-
Bitmap使用优化
BItmap使用优化可以从三个方面进行:内存压缩、对象复用、内存磁盘缓存一. BItmap内存压缩当我们读取一个Bitmap图片的时候,有一点一定要注意,就是千万不要去加载不需要的分辨率。在一个很小的ImageView上显示一张高分辨率的图片不会带来任何视觉上的好处,但却会占用我们相当多宝贵的内存。需要仅记的一点是,将一张图片解析成一个Bitmap对象时所占用的内存并不是这个图片在硬盘中的大小(那是各种压缩格式压缩后的大小),可能一张图片只有100k你觉得它并不大,但是读取到内存当中是按照像素点来算的原创 2021-03-14 16:17:24 · 502 阅读 · 0 评论 -
针对RecyclerView的优化整理
1.使用DiffUtil去局部刷新数据采用android Support 包下的DiffUtil工具类,它主要是为了配合 RecyclerView 使用,通过比对新、旧两个数据集的差异,生成旧数据到新数据的最小变动,然后对有变动的数据项,进行局部刷新。https://www.cnblogs.com/plokmju/p/7385136.htmlhttps://zhuanlan.zhihu.com/p/260798032.有大量图片时,滚动停止加载图片,停止后再去加载图片https://www.jia原创 2020-07-01 10:44:33 · 4574 阅读 · 0 评论 -
Android内存优化总结
1.内存泄漏一个长生命周期的对象持有一个短生命周期对象的引用,通俗讲就是该回收的对象,因为引用问题没有被回收,最终会产生OOM。1.1 非业务需要不要把activity的上下文做参数传递,可以传递application的上下文因为Application的生命周期等于整个应用的生命周期,非必须的情况下用Application的上下文可以避免发生内存泄露1.2 和Activity有关联的对象不...原创 2019-05-11 16:53:21 · 260 阅读 · 0 评论 -
Android加载长图
在加载长图的时候,如果直接把图片加载到内存,会占用大量的内存空间,容易引发OOM,而查看长图屏幕往往只能显示一部分,所以如果复用内存只加载展示的部分就可以减少内存占用。BitmapRegionDecoderBitmapRegionDecoder主要用于显示图片的某一块矩形区域,所以可以利用它来完成大图片的动态区域显示BitmapRegionDecoder提供了一系列的newInstan...原创 2019-05-21 23:05:43 · 1582 阅读 · 0 评论 -
Android进程保活方案总结
Android进程保活主要包括两个方面:提高进程的优先级,降低被杀死的概率在进程被杀死后拉活1.进程优先级Android 系统将尽量长时间地保持应用进程,但为了新建进程或运行更重要的进程,最终需要移除旧进程来回收内存。 为了确定保留或终止哪些进程,系统会根据进程中正在运行的组件以及这些组件的状态,将每个进程放入“重要性层次结构”中。 必要时,系统会首先消除重要性最低的进程,然后是...原创 2019-06-06 01:54:02 · 10668 阅读 · 0 评论 -
Apk极限瘦身八步
1.将图片转换成webp这个图片格式相比png或者jpg格式的图片损失的质量几乎可以忽略不计,但图片压缩后的体积比jpeg、jpg、png小很多,能节省大量的服务器宽带资源和数据空间。多用于大的颜色复杂的图。点击文件夹,进行全部转换2.使用SVGScalable Vector Graphics,可缩放矢量图。SVG不会像位图一样因为缩放而让图片质量下降。优点在于节约空间与内存。常用于简...原创 2019-06-19 00:34:48 · 1325 阅读 · 0 评论