在Android上,无法在仿真器或设备上使用DDMS方法分析

时间:2014-08-14 21:19:51

标签: android methods sdk profiling ddms

当我尝试在Windows 7 64位平台上使用方法分析时遇到问题。当我这样做时,这会在我使用的任何模拟器或真实设备上杀死一堆进程,包括我想要分析的那个。或者根本没有任何事情发生(见下面的追踪)

这是由于最新版本的Android SDK吗?

我已经能够在Linux 32位平台上使用方法分析。

有任何线索吗?

这是我在Nexus S(api等级10)上的跟踪仿真器。

08-15 08:11:04.847: D/dalvikvm(409): +++ active profiler count now 1
08-15 08:11:04.847: I/dalvikvm(409): TRACE STARTED: '[DDMS]' 1048576KB
08-15 08:11:04.847: D/dalvikvm(409): +++ active profiler count now 0
08-15 08:11:04.847: I/dalvikvm(409): Exception thrown by dispatcher for 0x4d505353
08-15 08:11:04.847: I/dalvikvm(409): Ljava/lang/InternalError;: buffer alloc failed
08-15 08:11:04.847: I/dalvikvm(409):    at dalvik.system.VMDebug.startMethodTracingNative(Native Method)
08-15 08:11:04.847: I/dalvikvm(409):    at dalvik.system.VMDebug.startMethodTracingDdms(VMDebug.java:207)
08-15 08:11:04.847: I/dalvikvm(409):    at android.os.Debug.startMethodTracingDdms(Debug.java:481)
08-15 08:11:04.847: I/dalvikvm(409):    at android.ddm.DdmHandleProfiling.handleMPSS(DdmHandleProfiling.java:148)
08-15 08:11:04.847: I/dalvikvm(409):    at android.ddm.DdmHandleProfiling.handleChunk(DdmHandleProfiling.java:81)
08-15 08:11:04.847: I/dalvikvm(409):    at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java:171)
08-15 08:11:04.847: I/dalvikvm(409):    at dalvik.system.NativeStart.run(Native Method)

1 个答案:

答案 0 :(得分:0)

最后我明白了。关键是在Android / DDMS选项中,“Method Profiler缓冲区大小”设置为1024.我将其更改为8192,现在一切都像我想要的那样顺畅。

希望这有帮助。