2017-07-17 8 views
6

Próbuję użyć systrace tool w wierszu poleceń na moim nierootowanym urządzeniu Nexus 4 z Lollipop 5.1.1. Wydaje się, że gdy próbuję uruchomić polecenia takie jak:Systrace "/ sys/kernel/debug/śledzenie/śledzenie_on" nie istnieje

systrace.py --time=4 -o testtrace.html sched app freq idle load 

pojawia się następujący błąd:

CRITICAL:root:(TimeoutThread-1-for-Thread-1) Exception on ReadFile(01a599f5919448ea, 
/sys/kernel/debug/tracing/tracing_on, retries=3, timeout=30), 
attempt 1 of 4: AdbCommandFailedError("(device: 01a599f5919448ea) adb pull 
/sys/kernel/debug/tracing/tracing_on /var/folders/dj/xq_jq3wx6hg9gzw5r9svkmr00000gn/T/tmpGxH9ji/tmp_ReadFileWithPull: 
failed with exit status 1 and output:\n- adb: error: remote object '/sys/kernel/debug/tracing/tracing_on' does not exist\n",) 
... 
... 
- adb: error: remote object '/sys/kernel/debug/tracing/tracing_on' does not exist 

Jednak kiedy używam adb komendy:

adb shell /sys/kernel/debug/tracing/ 

mogę potwierdź, że plik "tracing_on" istnieje.

Chociaż narzędzie systrace działa dobrze na Android Device Monitor. Powodem, dla którego chcę korzystać z wiersza poleceń, jest to, że chciałbym wywołać programowo narzędzie do analizy mojej aplikacji.

Kiedy próbowałem działa dokładnie tego samego polecenia na innych urządzeniach, takich jak OnePlus 3 lub Samsung Galaxy S6, narzędzie działa doskonale i jest w stanie wygenerować plik HTML. To właśnie na tym urządzeniu i Samsung Galaxy S4 generuje ten sam błąd.

Każda pomoc jest doceniana.

Odpowiedz

0

miałem ten sam problem i ponownie mój adb sesję jako root:

adb root 

że zrobił to dla mnie.