Android Tech And Perf

博客文章目录

字数统计: 1.5k阅读时长: 5 min
2019/12/01 Share

本博客内容主要集中在 Android 开发和优化相关的话题,包括一些性能工具的使用,Framework 知识讲解,性能理论知识讲解等,这里整理了一份目录供大家参考,大家可以挑感兴趣的部分来看。这里不仅仅包含博客中的内容,一些我在知乎或者知识星球的回答也会放到这里,不过这个目录里面放的都是我原创的博客,另外还收集了一些优秀文章 , 我也会不定期更新:Android 性能优化必知必会

博客的每次更新都会更新这篇目录,方便大家查阅。我会尽量保证每周一更,学无止境,与大家共勉,有什么想了解的或者博客中不足的地方,请大家在博客或者知乎、微博、微信留言给我,我会积极改正

Systrace 系列

Systrace 工具是分析 Android 性能问题的利器,它可以从一个图形的角度,来展现整机的运行情况。Systrace 工具不仅可以分析性能问题,用它来进行 Framework 的学习也是很好的,这也是我写本系列文章的一个原因

  1. Systrace 简介
  2. Systrace 基础知识 - Systrace 预备知识
  3. Systrace 基础知识 - Why 60 fps ?
  4. Systrace 基础知识 - SystemServer 解读
  5. Systrace 基础知识 - Input 解读
  6. Systrace 基础知识 - Vsync 产生与工作机制解读
  7. Systrace 基础知识 - Vsync-App :基于 Choreographer 的渲染机制详解
  8. Systrace 基础知识 - MainThread 和 RenderThread 解读
  9. Systrace 基础知识 - Binder 和锁竞争解读

流畅性

流畅性主要指的是卡顿、掉帧,对应的英文是 Smooth vs Jank

  1. Android 中的卡顿丢帧原因概述 - 方法论
  2. Android 中的卡顿丢帧原因概述 - 系统篇
  3. Android 中的卡顿丢帧原因概述 - 应用篇
  4. 关于 Android 系统流畅性的一些思考
  5. 新的流畅体验,90Hz 漫谈
  6. Android性能优化之过渡绘制(一)
  7. Android性能优化之过渡绘制( 二)
  8. Android性能优化后续

响应速度

响应速度主要指的是 App 冷热启动、界面跳转速度、亮灭屏速度等,对应的英文是 Fast vs Slow

  1. Android App 启动优化全记录
  2. 知乎 救救你的 StartingWindow
  3. Android 中如何计算 App 的启动时间?
  4. Android 应用启动优化:一种 DelayLoad 的实现和原理(上篇)
  5. Android 应用启动优化:一种 DelayLoad 的实现和原理(下篇)

内存

主要记录 Android 内存优化相关的知识和工具,以及对系统的影响

  1. Android 中低内存对性能的影响
  2. Android 系统不释放内存吗?
  3. Android 代码内存优化建议-Android 资源篇
  4. Android 代码内存优化建议-Android 官方篇
  5. Android 代码内存优化建议-Java 官方篇
  6. Android 内存优化之一:MAT 使用入门
  7. Android内存优化之二:MAT使用进阶
  8. Android内存优化之三:打开MAT中的Bitmap原图

Framework 知识

博客中 Framework 相关的内容会集中在这里,包括一些 Framework 的运行原理、Framework 问题的解题思路、Framework 优化方法等

  1. Android 中的“后台无效动画“行为分析
  2. Android 框架问题分析案例 - 谁杀了桌面?
  3. Android 中的 Activity Launch Mode 详解
  4. Android 中的 Hardware Layer 详解
  5. Android 平台应用宝和讯飞输入法无障碍服务导致的全局卡顿分析
  6. 从用户角度来理解 Android 应用的状态
  7. Android hwui 中 RenderThread 工作流程
  8. HashMap 源码分析
  9. 细说Java单例模式
  10. Android 系统开发源码环境搭建

App 开发

这里主要记录一些 App 开发相关的博文,由于写的比较早,大家随便看一下就可以了

  1. Android Bottom navigation 规范一:使用方法
  2. Android Bottom navigation 规范二:样式、行为与规格
  3. Android Service:开发自己的通知中心(1):辅助性服务介绍
  4. Android Service:开发自己的通知中心(2):辅助性服务实战
  5. Android开发:Log2File工具类
  6. Android:Ubuntu下执行Adb命令找不到设备
  7. Android小技巧:如何让EditText不自动获取焦点

个人总结和好物推荐

与技术无关,但是可以提高幸福感和工作效率

  1. 我是 Gracker,这是我的利器
  2. Gracker 的 2018 年度最推荐 - 给辛勤工作的自己一点奖励
  3. 陆奇:除了好代码,工程师怎样才算优秀?
  4. 2017 年度最推荐 - 给辛勤工作的自己一点奖励
  5. 关于 2017

读书笔记

  1. 程序员的修炼-01:绝地反击之术
  2. 程序员的修炼-02:编程之道
  3. 程序员的修炼-03:Web 设计原则
  4. 程序员的修炼-04:关于测试的一些思考
  5. 程序员的修炼-05:了解你的用户
  6. 程序员的修炼-06:互联网那些事
  7. 程序员的修炼-07:游戏与编程
  8. 程序员的修炼-08:阅读之美

性能优化典范和 Tips

性能优化典范是 Google 出品的一系列性能相关的短视频,总共出了 6 季,之前想的是每一集都来一个文章配合,后面发现不是很现实;Android Tips 则是翻译的另外一个博主的文章

  1. Android性能优化典范综述
  2. Android性能优化典范之Render Performance
  3. Android性能优化典范之Understanding Overdraw
  4. Android性能优化典范之Understanding VSYNC
  5. Android性能优化典范之Profile GPU Rendering
  6. Android Tips 1
  7. Android Tips 2
  8. Android Tips 3
  9. Android Tips 4
  10. Android Tips 5

知乎问答

知乎专栏会搬运一部分文章,这里只贴一些高赞的回答

  1. 如何看待小米部分机型运行《王者荣耀》时两个大核被锁
  2. Flyme 5 相对于 Flyme 4 流畅得脱胎换骨,其中根本的变化是什么?
  3. Android 系统不释放内存吗
  4. 了解Android的Framework层对工作有什么帮助吗?

个人页

建武的个人简介

个人演讲 && 培训 PPT

这一部分整理之后会放出来,不过大家都知道,演讲或者培训的时候,PPT 里面不会有太多的东西,多数只是一个大纲

CATALOG
  1. 1. Systrace 系列
  2. 2. 流畅性
  3. 3. 响应速度
  4. 4. 内存
  5. 5. Framework 知识
  6. 6. App 开发
  7. 7. 个人总结和好物推荐
  8. 8. 读书笔记
  9. 9. 性能优化典范和 Tips
  10. 10. 知乎问答
  11. 11. 个人页
  12. 12. 个人演讲 && 培训 PPT