Andoridはパフォーマンス分析にsystraceを使用しています

  • systraceこのコマンドは、システムレベルでデバイス上で実行されているすべてのプロセスの時間情報を収集および確認するために使用できるSystraceツールを呼び出します。

    このドキュメントでは、コマンドラインからSystraceレポートを生成する方法について説明します。Android 9(APIレベル28)以降を搭載したデバイスでは、「システムトレース」システムアプリケーションを使用してSystraceレポート生成することもできます。

    実行するにsystraceは、次の手順を実行してください。

    1. AndroidStudioから最新のAndroidSDKツールダウンロードしてインストールします
    2. Pythonインストールし、ワークステーションPATH環境変数に追加します。
    3. されるandroid-sdk/platform-tools/に追加されPATHた環境変数。このディレクトリには、systraceAndroid Debug Bridgeバイナリ呼び出しプログラム(adb)が含まれています。
    4. 使用する接続するためのUSBデバッグ接続を開発・システムへのAndroid 4.3(APIレベル18)以上を搭載したデバイスを。

    systraceAndroid SDKツールパッケージを提供するために、android-sdk/platform-tools/systrace/で見つけることできます。

    文法

    アプリケーションのHTMLレポートを生成するには、次の構文を使用してコマンドラインからレポートを実行する必要がありますsystrace

        python systrace.py [options] [categories]
        
    

    たとえば、次のコマンドはsystraceデバイスのアクティビティを記録するために呼び出しmynewtrace.htmlHTMLレポートと呼ばれるファイルを生成しますこのカテゴリリストは、ほとんどのデバイスにとって妥当なデフォルトリストです。

    $ python systrace.py -o mynewtrace.html sched freq idle am wm gfx view \
            binder_driver hal dalvik camera input res
        
    

    ヒント:トレース出力でタスク名を表示する場合は、コマンドパラメータschedカテゴリを追加する必要があります。

    接続されたデバイスでサポートされているカテゴリのリストを表示するには、次のコマンドを実行します。

    $ python systrace.py --list-categories
        
    

    カテゴリまたはオプションを指定しない場合、systrace使用可能なすべてのカテゴリのレポートが生成され、デフォルト設定が使用されます。使用可能なカテゴリは、使用している接続デバイスによって異なります。

    グローバルオプション

    グローバルオプション 説明
    -h | --help ヘルプメッセージを表示します。
    -l | --list-categories 接続されているデバイスで使用可能な追跡カテゴリを一覧表示します。

    コマンドとコマンドオプション

    コマンドとオプション 説明
    -o file HTML追跡レポートを指定されたファイルに書き込みます。このオプションを指定しない場合はsystrace、レポートsystrace.pyが配置されているディレクトリに保存され、名前が付けられtrace.htmlます。
    -t N | --time=N N秒間デバイスアクティビティを追跡します。このオプションを指定しない場合systraceは、コマンドラインでEnterキーを押してトレースを終了するように求められます。
    -b N | --buf-size=N NKBのトレースバッファサイズを使用します。このオプションを使用すると、追跡中に収集されるデータの合計サイズを制限できます。
    -k functions|--ktrace=functions コンマ区切りのリストで指定された特定のカーネル関数のアクティビティを追跡します。
    -a app-name|--app=app-name プロセス名のコンマ区切りリストとして指定されアプリケーションの追跡を有効にしますこれらのアプリケーションには、Traceトレース検出呼び出しクラスが含まれている必要がありますアプリケーションを分析するときに、このオプションを指定する必要があります。多くのライブラリ(たとえばRecyclerView)には、アプリケーションレベルのトレースを有効にしたときに役立つ情報を提供できるトレース検出呼び出しが含まれています。詳細については、カスタムイベントの定義を参照してくださいAndroid 9(APIレベル28)以降を実行しているデバイス上のすべてのアプリを追跡するには、引用符で囲まれたワイルドカード文字を渡してください"*"
    --from-file=file-path リアルタイムの追跡を実行する代わりに、ファイル(生の追跡データを含むTXTファイルなど)に基づいてインタラクティブなHTMLレポートを作成します。
    -e device-serial|--serial=device-serial 特定の接続されたデバイスでの追跡(対応するデバイスのシリアル番号で識別されます)。
    categories gfxグラフィックシステムプロセスをレンダリングするため表現など、情報を追跡するために指定されたシステムプロセスが含まれています-lコマンドを使用して実行systraceし、使用可能なデバイスが接続されているサービスのリストを表示できます。

おすすめ

転載: blog.csdn.net/u013741019/article/details/108411497