3

我有两个问题——但首先是:
Dell Inspiron M5030:AMD Athlon II P360
Windows 7 Ultimate 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 Heap:16
内部存储: 600MB
SDCard Size 128MB, Use Host 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.

这篇文章讲述了一些关于密钥文件的内容......这是缺少的吗?任何帮助,将不胜感激!

4

3 回答 3

2

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

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

跟踪文件本身曾经被拆分为“key”和“data”文件,但很久以前它们被合并为一个 .trace 文件。

于 2013-01-29T19:04:05.323 回答
0

问题似乎出在 4.2 模拟器上;4.1 模拟器处理了跟踪文件,并且(与 4.2 模拟器不同)允许我提取文件并将其加载到 ADM(Android 调试监视器)中。

于 2013-01-31T02:39:41.893 回答
0

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

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

于 2014-10-31T13:42:40.430 回答