直播间页面优化

作者: Android开发架构 | 来源:发表于2019-06-04 22:12 被阅读1次

最近发现我们直播应用在进入直播间时,能感受到明显的卡顿。本篇博文记录优化该问题的过程。

优化前

systrace作为分析卡顿问题的利器,本篇记录的优化方法,正是借助它实现的,优化前的systrace如下图。

优化前

透过systrace 标1的地方可以看到启动直播间的观看页面耗时近乎1s钟,难怪用户会感受到卡顿。标2跟标3的地方都是耗时的大户,放大systrace文件分别进行排查。

帧动画资源过大

标2放大图

透过放大后的标2处,发现一个combo_anim.xml 资源文件竟然耗时60ms,打开该文件如下:

combo_anim

这个帧动画是为了播放直播间小礼物而存在的,由于是通过数十张图片组合而成的,难怪加载耗时那么久,在接着排查,发现了好几处类似的资源,这些都是需要优化的地方。礼物相关的资源文件在刚进入直播间是没有必要加载的,因此这里通过ViewStub控件让礼物相关的布局实现惰性加载。

加载了不必要的webview

在接着看标3的地方

这里WebViewChromium初始化占据了大部分时间,WebView是为了加载游戏直播房间内的网页游戏而生的,进入直播间加载也不需要,可以通过判断是否是游戏房间在决定是否初始化webview来进行优化。

按需加载语音业务模块

再继续看有一块audiolive相关的view也在进入房间时被初始化了。

通过判断是否是语言房间来决定是否加载该块view。

优化后效果

最后看下优化后的效果,从900ms优化到了300ms。

优化后

在优化的过程中,透过systrace文件还是比较容易发现卡顿的症结在哪,但在修改的过程中,要注意可能导致的风险。任何修改旧业务的代码都可能会导致新的问题,如果引起了新的问题,那优化工作就得不偿失了。

更多资料分享欢迎Android工程师朋友们加入安卓开发技术进阶互助:856328774免费提供安卓开发架构的资料(包括Fultter、高级UI、性能优化、架构师课程、 NDK、Kotlin、混合式开发(ReactNative+Weex)和一线互联网公司关于Android面试的题目汇总。

相关文章

  • 直播间页面优化

    You have to believe in yourself. That's the secret of suc...

  • 直播间页面优化

    最近发现我们直播应用在进入直播间时,能感受到明显的卡顿。本篇博文记录优化该问题的过程。 优化前 systrace作...

  • 直播数据

    页面UV值提升(进入直播间观看):场地布置,直播间背景(活动呈现),直播间声音直播间设置,商品陈列,直播环境标准;...

  • 直播间键盘优化

    直播间键盘第一响应的时候,直播回话会微微的卡那么一下。因为是第一响应的时候才会出现,可以在写自定义键盘,把键盘放到...

  • IQKeyboardManager的bug

    这个bug是这样的,在首页点cell会进入到直播间页面,直播间有一个发弹幕的功能,textView点击整个直播页面...

  • 千聊|千聊讲师版App | 赞赏和提现

    01 如何开启赞赏功能 1. 进入“直播间”,点击【直播间设置】>【赞赏功能】,进入赞赏功能设置页面。 设置直播间...

  • iOS 直播间弹幕view 优化记录

    iPad 直播间弹幕优化记录 优化弹幕系统 创建过程优化 弹幕系统,使用的网上开源的弹幕控件 https://gi...

  • 明日

    关注首发并测试 4.1.0迭代 4月迭代 会员活动及会员观看逻辑优化需求文档 直播间优化需求文档

  • 前端性能初步优化

    性能优化有两个方向 优化页面渲染 减小页面体积,提升网络加载 优化页面渲染 对于优化页面渲染可以进行如下方案来进行...

  • DialogFragment

    私信功能一般 app 都会有2个入口 在直播间以外,普通的全页面。 在直播间,半屏。 实现 popupwindow...

网友评论

    本文标题:直播间页面优化

    本文链接:https://www.haomeiwen.com/subject/nafdxctx.html