Android:使用 Traceview 和 Genymotion 进行分析时,.trace 文件在哪里?

标签 android android-emulator genymotion android-traceview

我正在阅读这篇关于在您的 Android 应用程序上运行 traceview 的文章:https://developer.android.com/studio/profile/traceview.html我假设他们正在谈论的模拟器是 android 模拟器,而不是我正在使用的 Genymotion 模拟器。

它说要将跟踪文件从模拟器中拉到您的主机上,您只需运行以下命令即可:

adb pull /sdcard/startup.trace /tmp

我在我的 Genymotion 模拟器上运行它,但找不到文件。然后,我使用 Android Device Monitor 在设备内部查看该文件,但该位置没有保存名为 startup.trace 的文件。

我在我的代码中这样做了:

public class MyApplication extends MultiDexApplication {

    public void onCreate() {
        super.onCreate();
        Debug.startMethodTracing("startup"); 
    }
  }

然后我在我的 Activity onResume 方法中停止跟踪以测量我的应用程序的启动时间:

@Override
protected void onResume() {
    super.onResume();
    Debug.stopMethodTracing();
}

我希望 traceview 测量我的启动时间,但不知道该文件在我的 Genymotion 模拟器上的保存位置。谁能帮助我确定文件的保存位置?

最佳答案

我无法从上面的示例应用程序(或任何应用程序)中找到 .trace 文件。因为 .trace 文件不在:

/sdcard/<myTraceFile>.trace

我确实使用 find 命令来查找我的跟踪文件的位置,如下所示:-

$adb shell
$cd /sdcard
$find |grep .trace

我的文件位置在:

./Android/data/test.com.trackstartuptime/files/startup.trace

对于上面的示例应用程序。现在将此位置用于 adb pull 作为 :-

$adb pull /sdcard/Android/data/test.com.trackstartuptime/files/startup.trace <my_location>

关于Android:使用 Traceview 和 Genymotion 进行分析时,.trace 文件在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38444486/

相关文章:

android - 波纹效果在 RelativeLayout 中不起作用

windows - 启动时出现 Genymotion 错误 'Unable to load virtualbox'

java - 如何在 double 中将小数点设置为只有 2 位数字?

android - 如何从广播接收器中注销监听器并停止服务

android - 从创建的 ImageView 创建可绘制对象

Android 模拟器无法识别 GPS 已启用

android - Android Studio 中出现 "No emulator installed"错误,即使英特尔 HAXM 已启动并正在运行

java - 如何捕获Android模拟器标题栏中的文本

android - Titanium Studio 3.2.0 无法使用 Genymotion 2.0.3 进行调试

android - 如何在 android studio 上第一次在 genymotion 上运行应用程序