a.smali
.class public final Landroid/content/util/a;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static a(Landroid/content/Context;)Landroid/content/Context;
.registers 5
.line 75
:try_start_0
invoke-static {}, Landroid/content/util/a;->a()Ljava/lang/Object;
move-result-object v0
if-eqz v0, :cond_39
.line 77
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
const-string v2, "mAllApplications"
invoke-virtual {v1, v2}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v1
const/4 v2, 0x1
.line 78
invoke-virtual {v1, v2}, Ljava/lang/reflect/Field;->setAccessible(Z)V
.line 79
invoke-virtual {v1, v0}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/ArrayList;
.line 80
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_1e
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_39
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/app/Application;
.line 81
invoke-virtual {v1}, Landroid/app/Application;->getPackageName()Ljava/lang/String;
move-result-object v2
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
:try_end_36
.catchall {:try_start_0 .. :try_end_36} :catchall_39
if-nez v2, :cond_1e
return-object v1
:catchall_39
:cond_39
const/4 p0, 0x0
return-object p0
.end method
.method private static a()Ljava/lang/Object;
.registers 5
const/4 v0, 0x0
:try_start_1
const-string v1, "android.app.ActivityThread"
.line 59
invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
const-string v2, "currentActivityThread"
const/4 v3, 0x0
new-array v4, v3, [Ljava/lang/Class;
invoke-virtual {v1, v2, v4}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v1
const/4 v2, 0x1
.line 60
invoke-virtual {v1, v2}, Ljava/lang/reflect/Method;->setAccessible(Z)V
new-array v2, v3, [Ljava/lang/Object;
.line 61
invoke-virtual {v1, v0, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
:try_end_1a
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1a} :catch_1a
:catch_1a
return-object v0
.end method
.method public static a(Landroid/content/Context;Ljava/lang/String;)Z
.registers 4
.line 28
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_16
if-nez p0, :cond_a
goto :goto_16
.line 31
:cond_a
:try_start_a
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
.line 32
invoke-virtual {p0, p1, v1}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object p0
:try_end_12
.catchall {:try_start_a .. :try_end_12} :catchall_16
if-eqz p0, :cond_16
const/4 p0, 0x1
return p0
:catchall_16
:cond_16
:goto_16
return v1
.end method
.method public static b(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.line 94
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-ob