Android - Eclipse:跟踪文件

时间:2013-01-29 15:45:14

标签: android eclipse debugging sd-card trace

我有两个问题 - 但首先是第一件事:
戴尔Inspiron M5030:AMD速龙II P360
Windows 7旗舰版32bit SP 1
Android ADT 21.0.1-543035
org.eclipse.platform.ide 3.8.0-I20120608-1200
仿真器:
4.0“WVGA(480x800:hdpi)
Android 4.2(API 17)
armeabi-V7A
RAM:512,VM堆:16
内部存储:600MB
SDCard大小128MB,使用主机GPU

在我的活动的onCreate中,我有以下几行:

super.onCreate(savedInstanceState);
if (BuildConfig.DEBUG) {
        Log.i(Constants.TAG_ACTSPLASH, "onCreate() Method called.");
        Debug.startMethodTracing("actsplash");
}

在我的活动的onDestroy中,我有以下几行:

super.onDestroy();
    if (BuildConfig.DEBUG) {
            Log.i(Constants.TAG_ACTSPLASH, "onDestroy()");
            Debug.stopMethodTracing();
    }

问题编号一:在调试模式下,调用onCreate后,Logcat说:

davlikvm: Unable to open trace file '/mnt/sdcard/actsplash.trace': Permission denied

注意:在我的Epic4G(Android 4.2)上运行apk时,会创建跟踪文件。

问题编号二:无法处理从Epic4G中提取的跟踪文件。 (1)运行traceview时出现错误:

The standalone version of traceview is deprecated. Please use Android Device Monitor (tools/monitor) instead. trace file './actsplash.trace' not found

(2)运行ADM('%SDK%/ tools / monitor.bat')并加载跟踪文件时,我得到:

Failed to read the stack trace.

这个article说了一个关键文件...是什么缺少的?任何帮助将不胜感激!

3 个答案:

答案 0 :(得分:2)

可以通过向应用添加WRITE_EXTERNAL_STORAGE权限来修复第一个问题,以便它可以写入/ sdcard。或者,在私有应用程序数据存储区域中明确指定跟踪文件的文件名,然后从那里提取文件。

第二个问题是“未找到跟踪文件”,这是第一个问题的直接结果。第三个问题似乎是第二个问题的变异。

跟踪文件本身曾被分成“密钥”和“数据”文件,但很久以前就将它们合并为一个.trace文件。

答案 1 :(得分:0)

问题似乎与4.2模拟器有关; 4.1模拟器处理了跟踪文件,并且(与4.2模拟器不同)允许我拉出文件并将其加载到ADM(Android Debug Monitor)中。

答案 2 :(得分:0)

问题2: Traceview无法解析相对路径。我必须指定跟踪文件的完整路径(仍然只使用基本名称),以“C:/”开头

http://www.talkandroid.com/android-forums/android-games-applications/509-traceview-cant-find-trace-file.html