文档章节

Android性能优化之渲染优化

博为峰教研组
 博为峰教研组
发布于 2017/03/14 19:14
字数 306
阅读 8
收藏 0

Android系统每隔16ms重新绘制一次Activity,意思就是你的app必须在16ms内完成屏幕刷新的所有逻辑操作,这样才可以达到60帧/s。但是用户一般看到的卡顿是由于Android渲染性能造成的。

首先我们要了解Android的渲染机制,主要分为两个组件:CPU和GPU。

这两者共同完成屏幕上的绘制。

Activity如何将复杂的UI转换成用户看得懂的图像绘制到屏幕上呢?

这些都是通过栅格化操作完成的,所谓的栅格化操作就是绘制那些Button,Shape,Path,String,Bitmap等组件最基础的操作。它们把这些组件拆分到不同的像素上进行显示,简单点讲就是将那些复杂的XML布局文件和标记语言,转化成用户能看得懂的图像,但是这些不是直接转化的,XML布局文件需要在CPU中首先转化称多边形或者纹理,然后再传递给GPU进行栅格化,对于栅格化跟OpenGL有关,栅格化是一个特别费时的操作。

© 著作权归作者所有

博为峰教研组
粉丝 50
博文 1224
码字总数 479077
作品 0
黄浦
程序员
私信 提问
Android性能优化:那些不可忽略的绘制优化

前言 在 开发中,性能优化策略十分重要 本文主要讲解性能优化中的绘制优化,希望你们会喜欢。 目录 // 方式2:在 BaseActivity 的 onCreate() 方法中使用下面的代码移除 优化方案2:移除 控件...

Carson_Ho
2018/05/21
0
0
LibreOffice for Android 开发进展

拜于 Google Summer of Code,现在 LibreOffice for Android 已经有了原型。 Michael Meeks 在博客上分享了他指导的学生 Iain Billet 在 LibreOffice for Android 上的进展,目前 LibreOffic...

oschina
2012/07/16
4.3K
16
安卓的改进,看看安卓一直怎样在速度上追赶 iOS

一直以来人们都有这样的印象,认为搭载iOS系统的iPhone一定比搭载Android系统的安卓手机流畅。潜移默化中,不少果粉甚至是普通吃瓜群众都形成了这样的思维定式:安卓就是卡、慢的代名词。然而...

局长
2017/06/15
4.1K
50
Android布局与容器(ViewGroup)

Android的几大布局,如LinearLayout的父类是ViewGroup;ViewGroup下可以有子View。 ViewGroup的遍历,遍历子View。 > Android布局与容器(ViewGroup) 1.线性布局(LinearLayout) 2.相对布局(Re...

desaco
01/25
0
0
Android性能优化:这是一份详细的布局优化 指南(含、、)

前言 在 开发中,性能优化策略十分重要 本文主要讲解性能优化中的布局优化,希望你们会喜欢。 目录 /** 实例说明:在上述例子,在布局B中 通过标签引用布局C 此时:布局层级为 = RelativeLa...

Carson_Ho
2018/05/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

爬虫可以采集哪些数据?爬虫借用什么代理可以提高效率

学习爬虫的门槛非常低,特别是通过Python学习爬虫,即使是网上也能找到许多学习爬虫的方法,而且爬虫在数据采集方面效果比较好,比如可以采集几万、上百万网页数据进行分析,带来极有价值的数...

xiaotaomi
30分钟前
4
0
redis自建笔记

自建redis笔记 最近在linux安装了一下redis,特做一些笔记! 本文先单节点启动redis,然后再进行持久化配置,在次基础上,再分享搭建主从模式的配置以及Sentinel 哨兵模式及集群的搭建 单节点...

北极之北
32分钟前
4
0
没想到Spring Boot居然这么耗内存,有点惊讶

Spring Boot总体来说,搭建还是比较容易的,特别是Spring Cloud全家桶,简称亲民微服务,但在发展趋势中,容器化技术已经成熟,面对巨耗内存的Spring Boot,小公司表示用不起。如今,很多刚诞...

程序员修BUG
35分钟前
5
0
Spring Security 实战干货:Spring Boot 中的 Spring Security 自动配置初探

1. 前言 我们在前几篇对 Spring Security 的用户信息管理机制,密码机制进行了探讨。我们发现 Spring Security Starter相关的 Servlet 自动配置都在spring-boot-autoconfigure-2.1.9.RELEASE...

码农小胖哥
37分钟前
4
0
Docker 容器时区时间不一致 问题解决

解决方案: 1,最傻瓜也最方便的处理方式,运行新的容器前设置本机时区和时间文件与容器的映射 docker run -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime ...1 -v /etc/...

突突突酱
39分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部