Android·性能分析工具使用systrace报错

抓取 systrace 文件

adb shell "atrace gfx input view wm am res rs sched freq idle dalvik -b 20480 -t 10" > D:\test\test1.html
python C:\IDE\android_sdk\platform-tools\systrace\systrace.py --from-file=D:\test\test1.html

C:\Users\wwang>python C:\IDE\android_sdk\platform-tools\systrace\systrace.py --from-file=D:\test\test1.html
Traceback (most recent call last):
  File "C:\IDE\android_sdk\platform-tools\systrace\systrace.py", line 48, in <module>
    from systrace import run_systrace
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\systrace\systrace\run_systrace.py", line 41, in <module>
    from devil import devil_env
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\systrace\systrace\..\..\devil\devil\devil_env.py", line 33, in <module>
    import dependency_manager  # pylint: disable=import-error
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\dependency_manager\dependency_manager\__init__.py", line 29, in <module>
    from .archive_info import ArchiveInfo
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\dependency_manager\dependency_manager\archive_info.py", line 9, in <module>
    from dependency_manager import exceptions
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\dependency_manager\dependency_manager\exceptions.py", line 5, in <module>
    from py_utils import cloud_storage
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\common\py_utils\py_utils\cloud_storage.py", line 22, in <module>
    from py_utils import lock
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\common\py_utils\py_utils\lock.py", line 21, in <module>
    import win32file
ImportError: DLL load failed: 找不到指定的模块。

C:\Users\wwang>python -m pip install pypiwin32
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support pip 21.0 will remove support for this functionality.
Collecting pypiwin32
  Downloading pypiwin32-223.tar.gz (622 bytes)
Collecting pywin32>=223
  Downloading pywin32-228-cp27-cp27m-win_amd64.whl (7.5 MB)
     |████████████████████████████████| 7.5 MB 1.1 MB/s
Using legacy 'setup.py install' for pypiwin32, since package 'wheel' is not installed.
Installing collected packages: pywin32, pypiwin32
  Attempting uninstall: pywin32
    Found existing installation: pywin32 218
ERROR: Cannot uninstall 'pywin32'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

解决办法:

把python安装包下的 C:\Python27\Lib\site-packages 下面的pywin32-218-py2.7.egg-info 去掉

这样重新再执行  python -m pip install pypiwin32 就没有问题了

又报了另一个问题:

C:\Users\wwang>python C:\IDE\android_sdk\platform-tools\systrace\systrace.py --from-file=D:\test\test1.html
Traceback (most recent call last):
  File "C:\IDE\android_sdk\platform-tools\systrace\systrace.py", line 48, in <module>
    from systrace import run_systrace
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\systrace\systrace\run_systrace.py", line 41, in <module>
    from devil import devil_env
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\systrace\systrace\..\..\devil\devil\devil_env.py", line 33, in <module>
    import dependency_manager  # pylint: disable=import-error
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\dependency_manager\dependency_manager\__init__.py", line 29, in <module>
    from .archive_info import ArchiveInfo
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\dependency_manager\dependency_manager\archive_info.py", line 10, in <module>
    from dependency_manager import dependency_manager_util
  File "C:\IDE\android_sdk\platform-tools\systrace\catapult\dependency_manager\dependency_manager\dependency_manager_util.py", line 12, in <module>
    import six
ImportError: No module named six

解决方法:

python -m pip install six

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android平台提供了许多性能分析工具,用于帮助开发者识别和解决应用程序性能问题。以下是一些常用的Android性能分析工具: 1. Android Profiler:Android Studio提供的内置工具,可用于监视应用程序的CPU、内存、网络和电池使用情况。它可以显示实时数据和时间序列图,并允许开发者分析应用程序的性能瓶颈。 2. Traceview 和 Systrace:这两个工具用于分析应用程序的方法调用和系统事件。Traceview提供了一个可视化的方法调用图,可以帮助开发者找到影响性能的瓶颈。Systrace则提供了更全面的系统级性能分析,包括CPU、内存、绘制和I/O等方面的信息。 3. Memory Profiler:Android Studio中的Memory Profiler工具可以监视应用程序的内存使用情况,并帮助开发者找出内存泄漏和不必要的内存分配。它提供了堆转储和内存分配跟踪功能,以及实时内存使用图表。 4. Network Profiler:Android Studio的Network Profiler工具可以帮助开发者分析应用程序的网络使用情况。它提供了实时网络传输监视和数据传输分析功能,包括请求和响应的详细信息、传输时间和数据大小等。 5. Battery Historian:Battery Historian是一个用于分析应用程序电池使用情况的工具。它可以通过分析系统日志和电池状态数据,帮助开发者找出应用程序中导致电池消耗过高的原因。 除了以上提到的工具,还有其他一些第三方的性能分析工具,如LeakCanary用于检测内存泄漏、MAT(Memory Analyzer Tool)用于分析Java堆转储文件等。开发者可以根据自己的需求选择适合的工具进行Android性能分析
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值