a.smali
.class public final Landroidx/tracing/a;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static a:J
.field public static b:Ljava/lang/reflect/Method;
# direct methods
.method public static a()Z
.registers 7
.annotation build Landroid/annotation/SuppressLint;
value = {
"NewApi"
}
.end annotation
.line 1
:try_start_0
sget-object v0, Landroidx/tracing/a;->b:Ljava/lang/reflect/Method;
if-nez v0, :cond_9
.line 2
invoke-static {}, Landroid/os/Trace;->isEnabled()Z
move-result v0
:try_end_8
.catch Ljava/lang/NoSuchMethodError; {:try_start_0 .. :try_end_8} :catch_9
.catch Ljava/lang/NoClassDefFoundError; {:try_start_0 .. :try_end_8} :catch_9
return v0
:catch_9
:cond_9
const/4 v0, 0x0
.line 3
:try_start_a
sget-object v1, Landroidx/tracing/a;->b:Ljava/lang/reflect/Method;
const/4 v2, 0x1
const/4 v3, 0x0
if-nez v1, :cond_2e
.line 4
const-class v1, Landroid/os/Trace;
const-string v4, "TRACE_TAG_APP"
invoke-virtual {v1, v4}, Ljava/lang/Class;->getField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v1
.line 5
invoke-virtual {v1, v3}, Ljava/lang/reflect/Field;->getLong(Ljava/lang/Object;)J
move-result-wide v4
sput-wide v4, Landroidx/tracing/a;->a:J
.line 6
const-class v1, Landroid/os/Trace;
const-string v4, "isTagEnabled"
new-array v5, v2, [Ljava/lang/Class;
sget-object v6, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
aput-object v6, v5, v0
.line 7
invoke-virtual {v1, v4, v5}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v1
sput-object v1, Landroidx/tracing/a;->b:Ljava/lang/reflect/Method;
.line 8
:cond_2e
sget-object v1, Landroidx/tracing/a;->b:Ljava/lang/reflect/Method;
new-array v2, v2, [Ljava/lang/Object;
sget-wide v4, Landroidx/tracing/a;->a:J
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
aput-object v4, v2, v0
invoke-virtual {v1, v3, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/Boolean;
invoke-virtual {v1}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
:try_end_44
.catch Ljava/lang/Exception; {:try_start_a .. :try_end_44} :catch_45
goto :goto_5b
:catch_45
move-exception v1
.line 9
instance-of v2, v1, Ljava/lang/reflect/InvocationTargetException;
if-eqz v2, :cond_5b
.line 10
invoke-virtual {v1}, Ljava/lang/Throwable;->getCause()Ljava/lang/Throwable;
move-result-object v0
.line 11
instance-of v1, v0, Ljava/lang/RuntimeException;
if-eqz v1, :cond_55
.line 12
check-cast v0, Ljava/lang/RuntimeException;
throw v0
.line 13
:cond_55
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
:cond_5b
:goto_5b
return v0
.end method