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