- 構文:
<profileable android:shell=["true" | "false"] android:enabled=["true" | "false"] />
- 上位の要素:
<application>
- 説明:
- プロファイラがこのアプリにアクセスする方法を指定します。
- 属性:
android:shell
- デバイスのユーザーがローカル デバッグツールでこのアプリをプロファイリングできるかどうかを指定します。これには以下が含まれます。
android.os.Trace
トレース API(Android 11 以前)simpleperf
am profile
コマンドperfetto profilers
(ネイティブ メモリ、Java メモリ、CPU)
false
に設定されている場合、こうしたツールや API は、アプリがdebuggable
である場合にのみ機能します。デバッグ可能なアプリはパフォーマンスを著しく低下させるため、タイミングを正確に測定するうえで有用ではありません。正確な結果を得るために、この要素はローカルのパフォーマンス測定に使用することを強くおすすめします。この要素は、リリースビルドや製品版ビルドでローカル プロファイリングを可能にするために設計されています。ホスト プロファイリング ツールやシェルプロセスでメモリデータを読み取ることができないため、データ漏洩のリスクを低減できます。読み取りできるのはスタック トレースのみですが、これは通常、リリースビルドで難読化されているかシンボルが欠落しています。
android:enabled
- アプリをシステム サービスまたはシェルツールでプロファイリングできるかどうかを指定します(後者の場合は
android:shell
も設定する必要があります)。false の場合、アプリのプロファイリングは一切できません。デフォルトは true です。この属性は API レベル 30 で追加されました。
- 導入時の API レベル:
- API レベル 29
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2022-09-26 UTC.
[]
[]