- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我已经为使用 systrace 而苦恼了很长时间。
我的设备运行 4.1.2 (LT28i),我使用的是 Mac。我正在跳出类似问题的 SO 问题,但没有人有明确的答案。
我想假设要跟踪 views
和 graphics
方法一、 eclipse :
错误:
方法二,终端:
$ python systrace.py --cpu-load --time=10 -o mytracefile.html
error opening /sys/kernel/debug/tracing/options/overwrite: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/sched/sched_switch/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/power/cpu_frequency/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/power/cpu_idle/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/cpufreq_interactive/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/buffer_size_kb: No such file or directory (2)
error opening /sys/kernel/debug/tracing/trace_clock: No such file or directory (2)
error opening /sys/kernel/debug/tracing/tracing_on: No such file or directory (2)
error: unable to start trace
error opening /sys/kernel/debug/tracing/tracing_on: No such file or directory (2)
error opening /sys/kernel/debug/tracing/options/overwrite: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/sched/sched_switch/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/events/power/cpu_frequency/enable: No such file or directory (2)
error opening /sys/kernel/debug/tracing/trace_clock: No such file or directory (2)
unable to start tracing
error opening /sys/kernel/debug/tracing/buffer_size_kb: No such file or directory (2)
An error occured while capturing the trace. Output file was not written.
dionyses-lorentzoss-imac:systrace dionysis_lorentzos$ mount -o rw,remount -t debugfs none /sys/kernel/debug
mount: realpath /sys: No such file or directory
我也尝试了下面的命令并得到了一个错误,但是根据 google docs仅在某些跟踪中需要 root。
$ adb root
adbd cannot run as root in production builds
如何为 View 或图形生成简单的系统跟踪?
在手机中调试已启用,并且“启用跟踪”也已启用(通过命令行或通过手机本身)。
最佳答案
您的手机似乎正在运行不支持 systrace 的启动(内核)镜像。
“打开/sys/kernel/debug/tracing/options/overwrite 时出错:没有这样的文件或目录 (2)”
此错误消息表示 adb 守护进程(在设备端运行的 adb 模块)无法在您设备的文件系统上找到 /sys/kernel/debug/tracing/options/overwrite。 systrace 在 adb 上工作,并通过 /sys/kernel/debug/tracing 下的 sysfs 节点与内核通信。如果这些节点出于某种原因未在您的手机上公开,则 systrace 将无法工作。
所以你应该首先在你的设备上使用:
亚行外壳
然后浏览以确认 /sys 是否存在以及 /sys/kernel/debug/tracing 是否存在。
如果它们在那里(这种可能性极小),您必须调试 systrace.py 以弄清楚 systrace 为什么会认为节点不在那里。否则,您需要刷新具有 systrace 支持的不同启动镜像,因为 sysfs 由内核(主要由编译时的配置)和 init.rc 控制,它们都是启动镜像的一部分。
刷新不同的引导镜像可能涉及解锁/root 设备。您可能需要访问像 xdadeveloper 这样的粉丝网站来获取信息和图像。另一种选择是为您的设备下载内核源代码,编译内核并自行制作启动镜像。 Linux 受 GPL 保护,因此您的设备制造商有义务发布他们使用的专用内核的源代码。
关于android - 使 Systrace 在 Mac 上与 4.1.2 设备一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21747616/
我正在尝试使用 systrace。为此,我正在阅读official site . 但在终端上运行此命令后: D:\Software\Android\android-sdk\platform-tools
我正在尝试在 android 4.2 (avd 17) 模拟器上使用 systrace 我在跟踪选项中启用了 usb debuggimg 并激活了 webview,并在此处遵循本指南 http://w
这是错误信息 D:\Programming\Tools\ADT_bundle\sdk\platform-tools\systrace>python systrace.py Traceback (mos
我在我的 android studio 项目上运行 systrace 以发现一些性能错误,但在跟踪过程结束后,我收到以下错误,如果我在 chrome 中打开 trace.html 输出文件,跟踪 Vi
Android systrace工具,通过ADB调用atrace工具。但是,我不太了解跟踪文件的格式。显然它与 linux ftrace 工具非常相似,但有一些不同。主要区别在于它不使用 System
我正在尝试运行 Android SDK 提供的新 systrace 工具。正如在 Google I/O 2012 ( Demo starts at 31:04 in the video ) ( Ter
当我运行时python systrace.py --time=10 -o mynewtrace.html gfx 出现以下错误 Starting tracing (10 seconds) Tracin
Systrace Android 工具在内部调用一个名为 atrace 的工具,它是 ftrace 或 strace 的扩展(Linux工具)。 如果我们通过模拟器控制台(ADB shell)连接到
我正在尝试在 Ubuntu 12.04 32 位版本上编译 Systrace-1.6f。我发现以下错误。 root@sharma-VM:/home/sharma/Desktop/systrace-1.
我可以运行 systrace,但看不到 SurfaceFlinger 的踪迹。 GPU、bufferQueues 等 我给出了以下命令:systrace.py --time=10 -o mynewtr
android中的文档说 you can use the methods of the Trace class to add instrumentation to your application c
我遵循了 Jelly Bean 上的 systrace 教程 Android developer systrace 过程似乎是正确的,并为我创建了一个 html 文件,但它在浏览器中什么也没有显示,只
我正在学习使用这些工具进行性能分析。我已经阅读了关于 traceview 和 systrace 的 Android 文档,但我没有看到任何主要区别。它们都具有非常相同的 GUI:时间轴和左侧的所有组件
最新的 Android Systrace 页面 - http://developer.android.com/tools/debugging/systrace.html#options-4.3 - 显
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 8 年前。
我正在查看我的应用程序生成的 systrace,我发现一个框架花费的时间太长。这是由 RecyclerView 的 onCreateViewHolder 在展开我的项目 View 时引起的。使用 Co
我目前正在处理我的应用程序中的一些丢帧问题。我转向 systrace 寻求帮助,但不幸的是,我对它的输出并不聪明。 Here is my traceview.. 我的问题基本上是在我的适配器中我正在创
我按照此处的说明为我的应用程序使用 systrace,但每当我尝试为 systrace 设置标签时,我总是收到以下错误: systrace.py: error: no such option: --s
我在 Linux 中运行 Systrace 并生成了 HTML。 HTML 文件生成的内容很好。我的问题来了:当我在页面末尾的 HTML 中选择了一部分内容时,应该有一个需要显示的 Analysis
我正在尝试在非 root 设备上运行 systrace。如果选择了任何跟踪事件,它总是会出现以下错误: 无法找到跟踪开始标记“TRACE:”:打开/sys/kernel/debug/tracing/e
我是一名优秀的程序员,十分优秀!