美文网首页
Android卡顿分析之手把手教会你

Android卡顿分析之手把手教会你

作者: _水蓝 | 来源:发表于2020-03-04 14:59 被阅读0次

    第一步:

    既然我们要解决UI卡顿问题,那么第一步就是写一个很卡的APP.
    我自己是写了一个DEMO,listview去展示大图片,快速滑动的时候会很卡。

    图片.png

    第二步:

    打开DDMS

    然后选中调试APP进程,然后点击“Start Method profilling”


    图片.png

    第三步:

    操作APP,复现卡顿过程

    第四步:

    点击“Stop Method profilling”,与第二步是同一个位置

    至此trace文件已经生成,并由IDE自动打开

    第五步:

    最后来分析生成的trace文件.

    重点来了:点击Excl Cpu Time %, 重新排序,这个排序不包含子函数占用的CPU时间,所以可以立刻找到哪个函数消耗CPU资源最多。

    图片.png

    可以看到最消耗CPU的函数是BitmapFactory.nativeDecodeStream()

    很显然这个函数是framework层的API,我们接着往上找。

    选中这个函数,然后点击Parent,再点击Parent,直到找到我们App的调用处。

    图片.png

    最终我们找到那个耗时函数,也就是造成卡顿的症结!!!

    第六步:

    最终解决:用子线程异步加载 or 用开源库来载入!!

    欢迎大家一起交流 ^^

    相关文章

      网友评论

          本文标题:Android卡顿分析之手把手教会你

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