1// Signature format: 2.0 2package android.os { 3 4 @FlaggedApi("android.os.profiling.telemetry_apis") public final class ProfilingManager { 5 method @FlaggedApi("android.os.profiling.system_triggered_profiling_new") public void addProfilingTriggers(@NonNull java.util.List<android.os.ProfilingTrigger>); 6 method @FlaggedApi("android.os.profiling.system_triggered_profiling_new") public void clearProfilingTriggers(); 7 method public void registerForAllProfilingResults(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<android.os.ProfilingResult>); 8 method @FlaggedApi("android.os.profiling.system_triggered_profiling_new") public void removeProfilingTriggersByType(@NonNull int[]); 9 method public void requestProfiling(int, @Nullable android.os.Bundle, @Nullable String, @Nullable android.os.CancellationSignal, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<android.os.ProfilingResult>); 10 method public void unregisterForAllProfilingResults(@Nullable java.util.function.Consumer<android.os.ProfilingResult>); 11 field public static final int PROFILING_TYPE_HEAP_PROFILE = 2; // 0x2 12 field public static final int PROFILING_TYPE_JAVA_HEAP_DUMP = 1; // 0x1 13 field public static final int PROFILING_TYPE_STACK_SAMPLING = 3; // 0x3 14 field public static final int PROFILING_TYPE_SYSTEM_TRACE = 4; // 0x4 15 } 16 17 @FlaggedApi("android.os.profiling.telemetry_apis") public final class ProfilingResult implements android.os.Parcelable { 18 method public int describeContents(); 19 method public int getErrorCode(); 20 method @Nullable public String getErrorMessage(); 21 method @Nullable public String getResultFilePath(); 22 method @Nullable public String getTag(); 23 method @FlaggedApi("android.os.profiling.system_triggered_profiling_new") public int getTriggerType(); 24 method public void writeToParcel(@NonNull android.os.Parcel, int); 25 field @NonNull public static final android.os.Parcelable.Creator<android.os.ProfilingResult> CREATOR; 26 field public static final int ERROR_FAILED_EXECUTING = 4; // 0x4 27 field public static final int ERROR_FAILED_INVALID_REQUEST = 7; // 0x7 28 field public static final int ERROR_FAILED_NO_DISK_SPACE = 6; // 0x6 29 field public static final int ERROR_FAILED_POST_PROCESSING = 5; // 0x5 30 field public static final int ERROR_FAILED_PROFILING_IN_PROGRESS = 3; // 0x3 31 field public static final int ERROR_FAILED_RATE_LIMIT_PROCESS = 2; // 0x2 32 field public static final int ERROR_FAILED_RATE_LIMIT_SYSTEM = 1; // 0x1 33 field public static final int ERROR_NONE = 0; // 0x0 34 field public static final int ERROR_UNKNOWN = 8; // 0x8 35 } 36 37 @FlaggedApi("android.os.profiling.system_triggered_profiling_new") public final class ProfilingTrigger { 38 method public int getRateLimitingPeriodHours(); 39 method public int getTriggerType(); 40 field public static final int TRIGGER_TYPE_ANR = 2; // 0x2 41 field public static final int TRIGGER_TYPE_APP_FULLY_DRAWN = 1; // 0x1 42 field public static final int TRIGGER_TYPE_NONE = 0; // 0x0 43 } 44 45 @FlaggedApi("android.os.profiling.system_triggered_profiling_new") public static final class ProfilingTrigger.Builder { 46 ctor public ProfilingTrigger.Builder(int); 47 method @NonNull public android.os.ProfilingTrigger build(); 48 method @NonNull public android.os.ProfilingTrigger.Builder setRateLimitingPeriodHours(int); 49 } 50 51} 52 53