当我试图在我的Windows 7 64位平台上使用方法分析时,我遇到了一个问题。当我这样做时,这会在我使用的任何仿真器或真正的设备上杀死一堆进程,包括我想要分析的那个。否则什么也不会发生(见下面的跟踪)
这是因为Android的最新版本吗?
我已经能够在Linux 32位平台上使用方法分析。
有线索吗?
下面是我对Nexus (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)发布于 2014-08-15 18:37:23
我终于明白了。重点是在Android/DDMS选项中,“方法探查器缓冲区大小”设置为1024。我把它改成了8192,现在一切都像我想要的那样顺利。
希望这能有所帮助。
https://stackoverflow.com/questions/25317782
复制相似问题