.class public Landroidx/core/app/i$a; .super Ljava/lang/Object; .source "BundleCompat.java" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Landroidx/core/app/i; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x9 name = "a" .end annotation # static fields .field public static final a:Ljava/lang/String; = "BundleCompatBaseImpl" .field public static b:Ljava/lang/reflect/Method; .field public static c:Z .field public static d:Ljava/lang/reflect/Method; .field public static e:Z # direct methods .method public constructor ()V .locals 0 .line 1 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static a(Landroid/os/Bundle;Ljava/lang/String;)Landroid/os/IBinder; .locals 7 .line 1 sget-boolean v0, Landroidx/core/app/i$a;->c:Z const/4 v1, 0x0 const-string v2, "BundleCompatBaseImpl" const/4 v3, 0x1 if-nez v0, :cond_0 .line 2 :try_start_0 const-class v0, Landroid/os/Bundle; const-string v4, "getIBinder" new-array v5, v3, [Ljava/lang/Class; const-class v6, Ljava/lang/String; aput-object v6, v5, v1 invoke-virtual {v0, v4, v5}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v0 sput-object v0, Landroidx/core/app/i$a;->b:Ljava/lang/reflect/Method; .line 3 invoke-virtual {v0, v3}, Ljava/lang/reflect/Method;->setAccessible(Z)V :try_end_0 .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception v0 const-string v4, "Failed to retrieve getIBinder method" .line 4 invoke-static {v2, v4, v0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 5 :goto_0 sput-boolean v3, Landroidx/core/app/i$a;->c:Z .line 6 :cond_0 sget-object v0, Landroidx/core/app/i$a;->b:Ljava/lang/reflect/Method; const/4 v4, 0x0 if-eqz v0, :cond_1 :try_start_1 new-array v3, v3, [Ljava/lang/Object; aput-object p1, v3, v1 .line 7 invoke-virtual {v0, p0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; move-result-object p0 check-cast p0, Landroid/os/IBinder; :try_end_1 .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_3 .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_2 .catch Ljava/lang/IllegalArgumentException; {:try_start_1 .. :try_end_1} :catch_1 return-object p0 :catch_1 move-exception p0 goto :goto_1 :catch_2 move-exception p0 goto :goto_1 :catch_3 move-exception p0 :goto_1 const-string p1, "Failed to invoke getIBinder via reflection" .line 8 invoke-static {v2, p1, p0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 9 sput-object v4, Landroidx/core/app/i$a;->b:Ljava/lang/reflect/Method; :cond_1 return-object v4 .end method .method public static b(Landroid/os/Bundle;Ljava/lang/String;Landroid/os/IBinder;)V .locals 8 .line 1 sget-boolean v0, Landroidx/core/app/i$a;->e:Z const/4 v1, 0x0 const-string v2, "BundleCompatBaseImpl" const/4 v3, 0x2 const/4 v4, 0x1 if-nez v0, :cond_0 .line 2 :try_start_0 const-class v0, Landroid/os/Bundle; const-string v5, "putIBinder" new-array v6, v3, [Ljava/lang/Class; const-class v7, Ljava/lang/String; aput-object v7, v6, v1 const-class v7, Landroid/os/IBinder; aput-object v7, v6, v4 .line 3 invoke-virtual {v0, v5, v6}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v0 sput-object v0, Landroidx/core/app/i$a;->d:Ljava/lang/reflect/Method; .line 4 invoke-virtual {v0, v4}, Ljava/lang/reflect/Method;->setAccessible(Z)V :try_end_0 .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception v0 const-string v5, "Failed to retrieve putIBinder method" .line 5 invoke-static {v2, v5, v0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 6 :goto_0 sput-boolean v4, Landroidx/core/app/i$a;->e:Z .line 7 :cond_0 sget-object v0, Landroidx/core/app/i$a;->d:Ljava/lang/reflect/Method; if-eqz v0, :cond_1 :try_start_1 new-array v3, v3, [Ljava/lang/Object; aput-object p1, v3, v1 aput-object p2, v3, v4 .line 8 invoke-virtual {v0, p0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; :try_end_1 .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_3 .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_2 .catch Ljava/lang/IllegalArgumentException; {:try_start_1 .. :try_end_1} :catch_1 goto :goto_2 :catch_1 move-exception p0 goto :goto_1 :catch_2 move-exception p0 goto :goto_1 :catch_3 move-exception p0 :goto_1 const-string p1, "Failed to invoke putIBinder via reflection" .line 9 invoke-static {v2, p1, p0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I const/4 p0, 0x0 .line 10 sput-object p0, Landroidx/core/app/i$a;->d:Ljava/lang/reflect/Method; :cond_1 :goto_2 return-void .end method