​​​​​​性能优化相关(Android性能优化典范)

  1. 内存优化(Android的内存管理机制 & 内存分析工具:Android Profiler
    1. OOM优化
    2. 内存抖动优化
    3. 列表数组优化
    4. 内存泄露(Activity泄露):使用StrictMode或者LeakCanary 
  2. UI渲染优化(Android UI渲染 & 分析工具Layout inspector(hierarchy viewer))

         过度绘制(Overdraw):同一帧的某个像素在同一时间内被多次绘制(多层UI不可见的UI也被绘制)

         过度绘制检查:设置->开发者模式->调试GPU过度绘制

             

                蓝色,淡绿,淡红,深红代表了4种不同程度的Overdraw情况。蓝色表示不存在过度绘制,其他颜色分别表示2x,3x,4x过度绘制。

解决办法:1. 普通View尽量扁平布局(RelativeLayout)减少View嵌套层次,尽量使用RelativeLayout,去掉非必需的background等

                  2.自定义View,使用canvas.clipRect()canvas.quickreject()方法来控制需要刷新的区域

     3. 电量优化(检测工具Battery Historian)

             1. 非及时任务(如:上传log等)可以等充电时或链接WiFi时上传(移动网络比WiFi更耗电,且每次启动时比传输时耗电)

              2. 尽量打包传输,减少网络请求次数

              3. 正确使用Wakelock,及时释放WakeLock,以及及时释放硬件设备

              4. 使用JobScheduler集中处理收到的任务,在合适的时间,合适的网络下运行

      4. 启动速度优化

             1. 用TraceView 找到代码中启动速度慢的位置,进行UI

             2. 减少Application中onAttachBase()和onCreate()中耗时工作,在可行的范围内尽量改为异步初始化

      5. Bitmap优化

   

  1. 三方工具
    1. Battery Historian(Google)
    2. Emmagee(NetEase)
    3. Leakcanary(Squre)
    4. AndroidDevMetrics
  2. 电量优化

  3. UI优化

  4. 启动速度优化

内存相关

  1. 内存管理(分配&回收)

  2. 内存抖动

  3. Doze 和 App Standby

  4. 保活 

    1. 进程保活
    2. 网络连接保活

编译打包

  1. MultiDex
  2. Gradle Plugin
  3. Gradle 多渠道打包
  4. Gradle 动态编译
  5. Apk签名流程

代码质量

  1. Findbugs
  2. Android Lint

  3. SonarQube

虚拟机

  1. Dalvik
  2. ART

架构

  1. MVP
  2.  

更多相关文章

  1. Android事件分发和View绘制流程分析(三)
  2. (一百三十八)学习Android(安卓)studio 导入Android源码
  3. [Android]googleMap的简单使用,地图定位,图标绘制。
  4. Android(安卓)Installation error: INSTALL_FAILED_INSUFFICIENT
  5. Android启动后遇到错误
  6. Android的简单图形和view刷新
  7. 杂记
  8. Android布局优化
  9. Android(安卓)最新获取手机内置存储大小,SD卡存储空间大小方法

随机推荐

  1. Android(安卓)library projects cannot b
  2. android常见技巧---Android按返回键退出
  3. 2011.08.12——— android MediaPlayer
  4. 2011.08.12——— android MediaPlayer
  5. android读取plist文件
  6. Android-Layout布局
  7. Android(安卓)P系统设置之默认选择网络类
  8. android上,实现直接在屏幕上显示点击位置,
  9. android SQLite操作
  10. android 自定义ratingbar 图片显示不全的