我最近开始研发一款兼具Java和Java的应用程序
本机组件。我正在尝试为两者生成跟踪信息
使用Debug.startMethodTracing("myapp")
和。的组件
Debug.startNativeTracing()
交替进行。但是,两者的表现都出乎意料。
当我使用Debug.startMethodTracing("myapp")
时,我可以看到正在创建的文件/sdcard/myapp.trace
,但无论我运行多长时间,它总是空的。当我使用Debug.startNativeTracing()
并使用-trace <tracename>
开关启动模拟器时,我看到一条消息说“Trace started”,但是当我尝试运行我的应用时,
模拟器崩溃。
我错过了一些明显的东西吗?如何调试此问题?
答案 0 :(得分:5)
当我遇到这种情况时,这是因为我的启动/停止配对不匹配。例如,如果您启动方法跟踪但从不停止,我认为Android根本不会将缓冲的跟踪信息写入文件。同样地,如果你在中间有一个额外的停止,或者从不开始,等等,你将无法获得理想的结果。
除了该方法之外,跟踪对我来说还不错。
另一方面,本机跟踪似乎不受支持(仍然),因为当我尝试将本机跟踪结果加载到traceview时,我收到错误“Qemu跟踪文件尚未支持”。 (谷歌对此有何评论?)