
Android性能优化
以实际操作中遇到的基本案例为基础讲解如何进行Android的性能优化
Easyhood
Android开发工程师
展开
-
Android性能优化(八)电量优化
一、耗电量 手机各个硬件模块的耗电量是不一样的,有些模块非常耗电比如移动蜂窝网络、GPS,而有些模块则相对显得耗电量小很多。 电量测试,就是测试移动设备电量消耗快慢的一种测试方法。一般用平均电流来衡量电量消耗速度。平均电流越小,说明设备使用时间越长。但是平均电流多大才说明不耗电却没有一个统一标准。 硬件测试: 利用硬件设备测试被测设备的电流,统计一段时间内(使用某个功...原创 2020-03-05 16:46:33 · 755 阅读 · 1 评论 -
Android性能优化(七)Bitmap内存压缩
一、Bitmap内存占用 内存大小计算 ARGB_8888 ARGB各占8位,即WIDTH*HEIGHT*4 RGB_565 R5位,G6位,B5位,即16位WIDTH*HEIGH*2 getByteCount 返回可用于存储此位图像素的最小字节数。 BitmapFactory.Options 控制解码图片参数 inDensi...原创 2020-03-03 22:48:13 · 681 阅读 · 0 评论 -
Android性能优化(六)图片压缩
一、压缩图片 文件压缩——内存压缩 二、文件压缩方式 1.质量压缩 2.尺寸压缩 3.格式选择:JPEG/WEBP(4.0以上) 三、压缩原理 /frameworks/base/core/jni/android/graphics/Bitmap.cpp Skia引擎 https://skia.org/index_zh Google研发、开源的C++二维图形库 An...原创 2020-03-03 16:10:57 · 558 阅读 · 0 评论 -
Android性能优化(五)进程保活
一、进程的优先级 Android系统将尽量长时间地保持应用进程,但为了新建进程或运行更重要的进程,需要清除旧进程来回收内存。 为了确定保留或终止哪些进程,系统会对进程进行分类。 需要时,系统会首先消除重要性最低的进程,然后是清除重要性稍低一级的进程,依此类推,以回收系统资源。 https://developer.android.google.cn/guide/components/proce...原创 2020-03-02 23:28:51 · 780 阅读 · 0 评论 -
Android性能优化(四)内存抖动、OOM
内存抖动、OOM 内存抖动 内存抖动是指内存频繁地分配和回收,而频繁的gc会导致卡顿,严重时和内存泄漏一样会导致OOM。 内存抖动为什么会造成OOM这关系到Java的垃圾回收。 垃圾回收 在对对象进行回收前需要对垃圾进行采集,不同的虚拟机实现可能使用不同的垃圾收集算法,不同的收集算法的实现也不尽相同。不同的算法各有各的优劣势。 常用的收集算法有...原创 2020-03-02 20:28:17 · 607 阅读 · 0 评论 -
Android性能优化(三)内存管理
内存管理 内存模型 Android原生开发以java为主。 在java中,Java内存模型,往往是指Java程序在运行时内存的模型,而Java代码是运行在Java虚拟机之上的,所以Java内存模型,也就是指Java虚拟机的运行时内存模型。 java中内存全权交给虚拟机去管理,那虚拟机的运行时内存是如何构成的? 很多时候,我们提到内存,会说到堆...原创 2020-03-01 15:56:12 · 419 阅读 · 0 评论 -
Android性能优化(二)布局渲染流程优化
布局渲染流程优化 一、CPU与GPU绘制原理 CPU 的任务繁多,做逻辑计算外,还要做内存管理、显示操作,因此 在实际运算的时候性能会大打折扣,在没有 GPU 的时代,不能显示复 杂的图形,其运算速度远跟不上今天复杂三维游戏的要求。即使 CPU 的工作频率超过 2GHz 或更高,对它绘制图形提高也不大。这时 GPU 的设计就出来了。 CPU 的控制器较为复杂,而 ALU 数量较少。因此 CPU 擅...原创 2020-02-26 18:56:18 · 400 阅读 · 0 评论 -
Android性能优化(一)App启动时间优化
App启动时间优化 一、首先我们需要清楚App的主题加载 你的App的主题位于 res/values/styles <style name = "AppTheme" parent = "Theme.AppCompat.Light"> 我们点击Light主题进去,会发现此主题位于 app/build/intermediates/exploded-oar/com.android.s...原创 2020-02-25 19:00:53 · 2995 阅读 · 0 评论