当我使用samsung note3调试我的Android应用程序时,调试非常慢

时间:2014-04-02 23:59:27

标签: java android debugging dalvik

我已经尝试在Android Studio / Eclipse中调试我的应用程序,并且使用我的三星note3产生相同的结果,非常慢的调试(每秒1-15帧)。有趣的是,没有附加到应用程序的调试器,应用程序运行得很好(每秒60帧)。

我删除了Android Studio中的所有断点(从头开始安装),与eclipse相同,都产生相同的行为。我已经重新创建了几次现有的应用程序项目,没有运气。我也删除了所有表达式,没有运气。

我使用和不使用调试器进行了方法跟踪。时间/调用计数看起来非常相似,并且没有任何明显的异常值。

当我关闭调试时,应用程序立即恢复到60fps。

我打算让我的朋友在他的设备(一部HTC手机)上试一试,看看他是否可以重现。我应该提一下,我确实认为我在应用程序中使用调试器造成了额外的开销,因为我创建了一个简单的open gl表面,并且它调试得很好。我还要提一下,我已经尝试了3种不同的USB线,并且都产生了相同的结果。

我的应用是多线程的,并且使用大型对象池。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

如果您在Java代码中进行大量计算,可能会出现这种情况。

正常运行时,Dalvik使用" fast"执行代码。解释器,并使用JIT编译任何热门部分。当调试器附加时,它只在" debug"中运行。翻译,速度慢得多。

某些操作,例如"跳过",可能会非常痛苦。 (" Run to line"应该更快地执行。)