android - 从断点恢复后,Android 应用程序运行非常缓慢
问题描述
从 Java 断点恢复后,我的 Android 应用程序运行非常缓慢(几乎死机),即使我断开与调试器的连接,甚至拔下 USB 电缆也是如此。我在我尝试过的每台设备和模拟器上都得到了相同的行为。在遇到第一个断点之前性能很好,但是在我恢复后它就无法使用了,我必须杀死它。这非常令人沮丧。
它曾经运行良好,但它从 Android Studio 3.1.x 开始,在我升级到 3.2.1 和 3.3.2(此时最新的稳定版本)后它仍在发生。我在同一个应用程序上工作的同事都没有这个问题,所以它可能不是代码。我怀疑我在某处有配置问题。
我不知道它开始时发生了什么变化。无论断点在哪里,它都会发生。我在 LogCat 中看不到任何错误。
我正在使用运行 OSX 10.13.6、Android Studio 3.3.2(当前稳定版本)的 MacBook Pro(15 英寸,2017 年)和运行 P 的 Pixel XL。还有运行 P 的各种模拟器。
任何想法或建议都非常感谢。
注意:它发生在 Java 断点上,而不是 Kotlin。
注意:我无法使用简单的默认应用程序进行复制,因此它是特定于项目的,但仅限于我的机器上。
解决方案
正如@Magudesh 所说,android 调试器的方法断点非常慢。
在方法的第一行然后(如果有必要)在最后一行添加断点会更有用。
这将大大提高性能。如果您想跳转到下一个断点,您只需点击调试器窗口中的绿色播放按钮即可。
推荐阅读
- c# - 为什么我不能使用 xamarin 在 c# 代码中覆盖来自列表视图
- python - 使用tensorflow时如何处理OOM(内存不足)问题?
- python - python中不区分大小写的选择单击
- laravel - 无法选择 laravel 关系上的特定列
- r - Dplyr 过滤器使用时返回意外结果
- go - strconv.ParseInt:解析“18446744073709551615”:值超出范围
- azure-log-analytics - Kusto 中 OperationName 的开始和结束时间?
- c - 代码可以“矢量化”的各种方式是什么?
- java - 如何从Android中的字符串中剪切一块?
- python - 如何使用列表推导将整数和小数保存到每个列表中?