문법:
<profileable android:shell=["true" | "false"] android:enabled=["true" | "false"] />
포함된 위치:
<application>
설명
프로파일러가 이 애플리케이션에 액세스할 수 있는 방법을 지정합니다.
속성:
android:shell
기기 사용자가 로컬 디버깅 도구를 통해 이 애플리케이션을 프로파일링할 수 있는지 지정합니다. 도구에는 다음이 포함됩니다. 설정하지 않거나 false로 설정하면 이러한 도구 및 API는 앱이 debuggable일 때만 작동합니다. 디버그 가능 앱은 크고 다양한 성능 저하를 유발하며 타이밍을 정확하게 측정하는 데 유용하지 않습니다. 이 요소는 정확한 결과 캡처를 위해 로컬 성능 측정에 사용하는 것이 좋습니다.

이 요소는 출시 버전, 프로덕션 빌드에서 사용할 수 있도록 설계되었으며, 이를 통해 로컬 프로파일링이 가능합니다. 데이터 노출에 대한 우려가 최소화됩니다. 호스트 프로파일링 도구 및 셸 프로세스에서 메모리 데이터를 읽을 수 없습니다. 스택 트레이스만 읽을 수 있으며 일반적으로 출시 빌드에서 난독화되거나 기호가 없습니다.

android:enabled
애플리케이션을 시스템 서비스나 셸 도구로 프로파일링할 수 있는지 지정합니다(셸 도구의 경우 android:shell도 설정해야 함). false인 경우 애플리케이션은 전혀 프로파일링할 수 없습니다. 기본값은 true입니다. 이 속성은 API 수준 30에 추가되었습니다.
도입 시기
API 수준 29