Я пытаюсь запустить Systrace, но я получаю сообщение об ошибке при запуске этой команды.Ошибка при попытке использовать Android systrace.py в Linux Ubuntu
[email protected]:~/Android/Sdk/platform-tools/systrace$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
[email protected]:~/Android/Sdk/platform-tools/systrace$ ls
AUTHORS prefix.html systrace.py
LICENSE suffix.html systrace_trace_viewer.html
NOTICE systrace-legacy.py UPSTREAM_REVISION
[email protected]:~/Android/Sdk/platform-tools/systrace$ python systrace.py --time=10 -o mynewtrace.html
Traceback (most recent call last):
File "systrace.py", line 320, in <module>
main()
File "systrace.py", line 158, in main
stderr=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
В настоящее время я использую Ubuntu с Android SDK 5.1.1, установленным вместе с Android Studio. Ниже есть мой экспорт PATH в .bashrc:
export PATH="~/Applications/android-studio/bin/:$PATH"
export PATH="~/Android/Sdk/platform-tools/:$PATH"
export PATH="~/Android/Sdk/tools/:$PATH"
Похоже, что у него проблемы с поиском «adb», хотя похоже, что у вас есть правильный путь. Если вы просто запускаете «adb», он найден на вашем пути? Попробуйте отредактировать скрипт, прежде чем вызов «Popen» добавит 'print >> sys.stderr, 'args -% s'% atrace_args' и посмотреть, что он пытается сделать. – fadden
@fadden Я обновил Python до v2.7.10, а также подтвердил работу команды adb. Когда я набираю 'adb devices', я вижу свое устройство в списке. Я добавил два оператора печати. Один из 'atrace_args' и один для' tracer_args'. Ниже приведен вывод: '['atrace', '-z', '-t', '10', ';', 'ps', '-t'] tracer args are ['adb', 'shell' , 'atrace -z -t 10; ps -t '] ' – Zythyr