.class public final Landroidx/core/os/Profiling; .super Ljava/lang/Object; .source "SourceFile" # static fields .field private static final KEY_BUFFER_FILL_POLICY:Ljava/lang/String; = "KEY_BUFFER_FILL_POLICY" .field private static final KEY_DURATION_MS:Ljava/lang/String; = "KEY_DURATION_MS" .field private static final KEY_FREQUENCY_HZ:Ljava/lang/String; = "KEY_FREQUENCY_HZ" .field private static final KEY_SAMPLING_INTERVAL_BYTES:Ljava/lang/String; = "KEY_SAMPLING_INTERVAL_BYTES" .field private static final KEY_SIZE_KB:Ljava/lang/String; = "KEY_SIZE_KB" .field private static final KEY_TRACK_JAVA_ALLOCATIONS:Ljava/lang/String; = "KEY_TRACK_JAVA_ALLOCATIONS" .field private static final VALUE_BUFFER_FILL_POLICY_DISCARD:I = 0x1 .field private static final VALUE_BUFFER_FILL_POLICY_RING_BUFFER:I = 0x2 # direct methods .method public static final registerForAllProfilingResults(Landroid/content/Context;)Lkotlinx/coroutines/flow/Flow; .locals 2 .annotation build Landroidx/annotation/RequiresApi; api = 0x23 .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/content/Context;", ")", "Lkotlinx/coroutines/flow/Flow;" } .end annotation const-string v0, "context" invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V .line 73 new-instance v0, Landroidx/core/os/Profiling$registerForAllProfilingResults$1; const/4 v1, 0x0 invoke-direct {v0, p0, v1}, Landroidx/core/os/Profiling$registerForAllProfilingResults$1;->(Landroid/content/Context;Lkotlin/coroutines/Continuation;)V invoke-static {v0}, Lkotlinx/coroutines/flow/FlowKt;->callbackFlow(Lkotlin/jvm/functions/Function2;)Lkotlinx/coroutines/flow/Flow; move-result-object p0 return-object p0 .end method .method public static final registerForAllProfilingResults(Landroid/content/Context;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V .locals 1 .annotation build Landroidx/annotation/RequiresApi; api = 0x23 .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/content/Context;", "Ljava/util/concurrent/Executor;", "Ljava/util/function/Consumer<", "Landroid/os/ProfilingResult;", ">;)V" } .end annotation const-string v0, "context" invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V const-string v0, "executor" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V const-string v0, "listener" invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V .line 93 const-class v0, Landroid/os/ProfilingManager; invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; move-result-object p0 check-cast p0, Landroid/os/ProfilingManager; .line 94 invoke-virtual {p0, p1, p2}, Landroid/os/ProfilingManager;->registerForAllProfilingResults(Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V return-void .end method .method public static final requestProfiling(Landroid/content/Context;Landroidx/core/os/ProfilingRequest;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V .locals 7 .annotation build Landroidx/annotation/RequiresApi; api = 0x23 .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/content/Context;", "Landroidx/core/os/ProfilingRequest;", "Ljava/util/concurrent/Executor;", "Ljava/util/function/Consumer<", "Landroid/os/ProfilingResult;", ">;)V" } .end annotation const-string v0, "context" invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V const-string v0, "profilingRequest" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V .line 130 const-class v0, Landroid/os/ProfilingManager; invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; move-result-object p0 move-object v0, p0 check-cast v0, Landroid/os/ProfilingManager; .line 132 invoke-virtual {p1}, Landroidx/core/os/ProfilingRequest;->getProfilingType()I move-result v1 .line 133 invoke-virtual {p1}, Landroidx/core/os/ProfilingRequest;->getParams()Landroid/os/Bundle; move-result-object v2 .line 134 invoke-virtual {p1}, Landroidx/core/os/ProfilingRequest;->getTag()Ljava/lang/String; move-result-object v3 .line 135 invoke-virtual {p1}, Landroidx/core/os/ProfilingRequest;->getCancellationSignal()Landroid/os/CancellationSignal; move-result-object v4 move-object v5, p2 move-object v6, p3 .line 131 invoke-virtual/range {v0 .. v6}, Landroid/os/ProfilingManager;->requestProfiling(ILandroid/os/Bundle;Ljava/lang/String;Landroid/os/CancellationSignal;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V return-void .end method .method public static final unregisterForAllProfilingResults(Landroid/content/Context;Ljava/util/function/Consumer;)V .locals 1 .annotation build Landroidx/annotation/RequiresApi; api = 0x23 .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/content/Context;", "Ljava/util/function/Consumer<", "Landroid/os/ProfilingResult;", ">;)V" } .end annotation const-string v0, "context" invoke-static {p0, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V const-string v0, "listener" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V .line 100 const-class v0, Landroid/os/ProfilingManager; invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; move-result-object p0 check-cast p0, Landroid/os/ProfilingManager; .line 101 invoke-virtual {p0, p1}, Landroid/os/ProfilingManager;->unregisterForAllProfilingResults(Ljava/util/function/Consumer;)V return-void .end method