如何检测android中的活动冻结和滞后原因?
Posted
技术标签:
【中文标题】如何检测android中的活动冻结和滞后原因?【英文标题】:How to detect activity freeze & lag cause in android? 【发布时间】:2021-11-11 06:17:03 【问题描述】:我的一项活动非常卡顿和滞后。我尝试使用分析器,但无法获得太多细节。有没有其他工具可以帮助我找出活动滞后的原因?
PS - 有大量的流程和代码在活动中,所以在这里发布代码没有意义
【问题讨论】:
【参考方案1】:我认为你落后的原因有两个:
-
您经常在 ViewGroup 或 RecyclerView 中重绘困难的 UI。在开发者选项中,您可以启用
Show layout bounds
来检查此问题。
你在主线程中做了很长的事情,需要研究什么可以在主线程中长期工作。
此外,如果您的滞后取决于 RecyclerView,您需要制作简单的 ViewHolder(使用一个 ViewGroup 制作简单的 UI 并从 ViewHolder 中删除所有逻辑,例如:字符串格式,一些数学......)。最好使用 ListAdapter 而不是 RecyclerViewAdapter。
如果您能提供更多信息,我可以为您提供更多建议。
【讨论】:
以上是关于如何检测android中的活动冻结和滞后原因?的主要内容,如果未能解决你的问题,请参考以下文章
启用 64 位后,Unity 游戏在 Android 设备上滞后