Android Tech And Perf

Android Tech And Perf

Android Framework && Performance && Tools && Linux && App Dev && Reading

通过 Systrace 学习 Android 框架 -- Systrace 简介

本文是 Systrace 系列文章的第一篇,主要是对 Systrace 进行简单介绍,介绍其简单使用方法;如何去看 Systrace;如何结合其他工具对 Systrace 中的现象进行分析。

本系列的目的是通过 Systrace 这个工具,从另外一个角度来看待 Android 的运行,从另外一个角度来对 Framework 进行学习。也许你看了很多讲 Framework 的文章,但是总是记不住代码,或者不清楚其运行的流程,也许从 Systrace 这个图形化的角度,你可以理解的更深入一些。

通过 Systrace 学习 Android 框架 -- Why 60 fps ?

本文是 Systrace 系列文章的第二篇,解释一下为何大家总是强调 60 fps。60 fps 是一个软件的概念,与屏幕刷新率里面提到的 60hz 是不一样的,可以参考这篇文章:新的流畅体验,90Hz 漫谈

本系列的目的是通过 Systrace 这个工具,从另外一个角度来看待 Android 的运行,从另外一个角度来对 Framework 进行学习。也许你看了很多讲 Framework 的文章,但是总是记不住代码,或者不清楚其运行的流程,也许从 Systrace 这个图形化的角度,你可以理解的更深入一些。

通过 Systrace 学习 Android 框架 -- 系列文章目录

随着 Systrace 的功能越来越完善,加上 Android 版本的更迭,之前写的 Systrace 系列教程已经有点过时;另外随着自己技能的完善,从 Systrace 里挖掘了更多的信息,对解决各种性能问题很有帮助。这些技能我需要记录下来,增强自己的总结和归纳的能力,如果能帮助到看文章的人,也是极好的

本系列的目的是通过 Systrace 这个工具,从另外一个角度来看待 Android 的运行,从另外一个角度来对 Framework 进行学习。也许你看了很多讲 Framework 的文章,但是总是记不住代码,或者不清楚其运行的流程,也许从 Systrace 这个图形化的角度,你可以理解的更深入一些。

新的流畅体验,90Hz 漫谈
PC 上高刷新率屏幕很早就出来了,但是 Android 上高刷新率屏幕出现在 Android 手机上还只是这两年的事情,尽管雷蛇去年就推出了 120Hz 屏幕的手机,但是反响平平;而个人认为今年努比亚的红魔 3 和 OnePlus 的 7 Pro 推出的 90Hz 的屏幕才是 Android 手机目前这个阶段最好的选择,也是目前能显著提升用户体验的一个点。对高刷新率屏幕没啥概念的,可以去苹果体验店体验一下 120Hz 刷新率的 iPad Pro。 技术术语解释什么是屏幕刷新率 ?首先我们需要知道什么是屏幕刷新率,简单来说,屏幕刷新率是一个硬件的概念,是说屏幕这个硬件刷新画面的频率。 举例...
我是 Gracker,这是我的利器
之前很久就看到过利器社群计划,看了大家的分享,学到了很多东西,正如开头所讲 “工具和灵感,都是利器。当来自不同的领域,不同类型的创造者的工具和灵感互相碰撞的时候,才会迸发出更多的可能性”。下面是我针对利器社群计划的6个问题的简单回答,希望有能帮助到大家的部分。 介绍一下你自己和所做的工作?我是一名 Android 系统开发工程师,在某手机厂商的系统研发部门。工作主要是负责 Android 系统相关的工作,比如性能、功耗、稳定性、框架维护等,工作比较杂,都是打杂的工作。爱好方面,打篮球、跑步、打游戏这些程序员必备技能自然是不能少;读书、养猫、喝茶这些艺术青年的爱好也不落下;业余时间喜欢刷刷...
Android 平台应用宝和讯飞输入法无障碍服务导致的全局卡顿分析
现象有用户反馈,手机在滑动的时候, 列表会一抖一抖的, 滑动桌面或者设置(只要是可以滑动的),都会出现,但是这个并不是必现,而是某些用户会出现,某些用户则不会出现。 吃瓜群众可以直接拉到下面看 罪魁祸首和自检 ,对分析问题比较感兴趣的可以看一下分析的过程。 Systrace 分析本地测试有一台复现, 拿过来之后分析发现,手指滑动桌面或者设置,都会必现卡顿, 从 Trace 上看就是下面这样 红色箭头处就是掉帧的地方. 从上面的 Buffer 个数可以看到, SF没有绘制的原因是 Launcher 没有提交 Buffer 上来. 对应的 Launcher Trace如下 , 可以看到 La...
Gracker 的 2018 年度最推荐 - 给辛勤工作的自己一点奖励

2018 年初写了一篇<2017 年度最推荐-给辛勤工作的自己一点奖励=""> , 最近有人问我今年是否会有 2018 年的年度推荐,我想了想,2018 年虽然不景气,但是还是有一些好东西可以推荐给大家,于是便有了这一篇文章。

跟 2017年一样,我会把 2018 年里面我觉得体验很棒或者对工作生活很有帮助的东西推荐给大家,或许 2019 你会需要他们。推荐的内容包含了 App、硬件、书籍、博客、专栏等,希望能帮助到看到这篇文章的你

Android 系统开发源码环境搭建
不管是 Android App 开发工程师还是 Android 系统开发工程师,对 Android 系统有一定的了解是很有必要的,正好我这几天在家里搭建了个开发环境,把过程分享出来,有需要的人可以看一下。 大概的步骤包含下面几个: 安装 Ubuntu 系统 配置 Ubuntu 系统 安装必备的软件 配置 VPN (可选) 下载 AOSP 代码 配置编译环境并编译 Pixel 的代码 刷机 修改和编译 Framework 、Service、Res 建议准备下面的硬件,当然没有也没关系,有了更好 PC 或者笔记本 512GB 的 SSD Pixel 手机一台 安装 Ubuntu 系统...
陆奇:除了好代码,工程师怎样才算优秀?
转自:百度Family,内容为陆奇 2017 年 7 月 的百度内部分享,非常值得技术人员学习和思考 个人非常崇拜陆奇, “陆奇以精力旺盛著称,通常凌晨4点起床,先查邮件,然后在跑步机上跑4英里,边跑边听古典音乐或看新闻。早上5点至6点就办公室,利用这段时间不受别人干扰准备一天的工作,然后一直工作到晚上10点,有时也会在半夜给同事发电子邮件。LinkedIn CEO 杰夫·维纳(Jeff Weiner)曾在雅虎与陆奇共事多年,他开始以为这种日程安排无法持久,后来不得不说:“陆奇的确是我所见过最有干劲的人。”前雅虎工程师阿米特·库玛尔(Amit Kumar)也夸奖陆奇人缘好。陆奇说:...
从用户角度来理解 Android 应用的状态
真正的 Android 手机用户并不关心也不需要关心 Android 系统那复杂的应用管理流程,对于这些人来说,应用无非就是两个状态:在运行,不在运行。当然从工程师的角度来看,这两个状态是很不严谨的,其中还包含很多中间态,比如不在运行的时候,进程很可能在后台进行休眠,也可能被杀掉了。所以我们结合用户与工程师,来简单说说 Android 应用的状态,主要从下面四个点: 应用在前台运行 应用在后台运行 应用在后台休眠 应用被杀 最后会说一下流氓应用是如何利用这几个状态进行保活的,以及普通用户如何识别并且修复。 应用在前台运行应用在后台运行应用在后台休眠应用被杀流氓应用的表现以及应对的办法