IdleHandler,页面启动优化神器

  • 时间:
  • 浏览:1
  • 来源:彩神官网

第十个 多 大难题:有那此最好的最好的办法还还可否 去统计页面的启动时间呢?

从你你什儿 源码可知道,IdleHandler即在looper上方的message处置完了的如果去调用,这不却说亲戚朋友onResume调用完了如果的时机么。

把在onResume以及其如果的调用的但非还要的事件(如其他界面View的绘制)挪出来找十个 多 时机(即绘制完成如果)去调用。那样启动时间自然就缩短了。如果 整体做的事要还还可否要能 明显变化。还还可否要能 你你什儿 时机是那此呢?



App启动主要经过如下几次流程

第十个 大难题:启动时间是包括了那此流程,是怎么还可否被计算出来的呢?

效果还是挺明显的。

Inflate the layout.

随着App的开发到了某个阶段必然会遇到十个 多 需求,那却说优化页面的启动时间。

上方的命令行可用来进行查看。

由你你什儿 思路我把此人 负责的页面中的其他界面的绘制逻辑挪到了IdleHandler中,可能性有LoadingView时间,我把Adapter的绑定也挪出去了。看下优化前后效果图 

到了此处就算真正调用到了onResume的最好的最好的办法。

下面就剥一下onResume的逻辑,绘制的有兴趣还还可否 此人 看源码。 首先performResumeActivity中会调用r.activity.performResume();

Create and initialize the activity.

在performResumeActivity 中进行了onResume的回调,在wm.addView 中进行了绘制,如果 onResume的最好的最好的办法是在绘制如果,在onResume中做其他耗时操作都会影响启动时间。

来一张图说明一下,明显的IdleHandler在onResume以及performTraversals绘制如果调用 



最末尾的步骤5是绘制你的界面。全都全版的启动时间是要到绘制完成为止。

如果 在performResume中调用了 mInstrumentation.callActivityOnResume(this);

Initialize the objects.

看上方的代码,就先放结论了。

最后在callActivityOnResume 调用了onResume

原文发布时间为:2018-11-13

既然知道了onResume中做的操作会影响到启动时间,还还可否要能 都会十个 多 优化启动时间的思路了。

adb logcat -s ActivityManager | grep "Displayed"

还还可否要能 绘制界面对应的是那此如果呢?一般亲戚朋友开发,最晚能被回调的是在onResume最好的最好的办法,还还可否要能 onResume最好的最好的办法是在绘制如果还是如果呢?

本文来自云栖社区合作 伙伴“Android开发中文站 ”,了解相关信息还还可否 关注“Android开发中文站”。

Launch the process.

看下IdleHandler的源码

no code no truth

Draw your application for the first time.

猜你喜欢

怎样加入基督教,做一个信徒?

为你推荐:加入基督教都有目的,要信仰耶稣基督,做1个多真正的信徒不不 得救。圣经上叫做【因信得救】。新约《圣经》罗马书10章9节说:你若口里认耶稣为主,心里信神叫他从死里复活

2020-02-27

西方艺术发展至今共分为哪几个阶段

展开删剪可选中一个多或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个大问題。下载百度知道APP,抢鲜体验 我来答换一换使用百度知道APP,立即抢鲜体验。你的

2020-02-27

国外名人美国总统三个字

展开全版展开全版收起1条折叠回答可选中有有另三个 或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个什么的问题。使用百度知道APP,立即抢鲜体验。你的手机镜头里

2020-02-27

盘它!10篇+阿里云技术经典案例,看完必收藏(下)

讲透Netty底层通讯原理就看哪些干货帖,大数据产品从入门到精通|MVP讲堂盘它!40篇+阿里技术经典案例,就看必收藏下拉加载更多请收下这份关于人工智能的根目录——博客埋点系列

2020-02-26

游客cmvdxudqxtao4的主页

阿里云ET专家,重点在智能语音、人脸识别、图像识别、OCR等...阿里云计算美码师,老码农一枚,唯美食与技术不能辜负,欢迎交流及打扰!文章:12丨粉丝:641500丨话题:1云

2020-02-26