PackageUtil.smali
.class public Lcom/cmcm/locker/sdk/notificationhelper/impl/util/PackageUtil;
.super Ljava/lang/Object;
.source "PackageUtil.java"
# direct methods
.method public constructor <init>()V
.registers 1
.prologue
.line 17
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static getAppIntentWithPackageName(Landroid/content/Context;Ljava/lang/String;)Landroid/content/Intent;
.registers 8
.prologue
const/4 v5, 0x0
const/4 v1, 0x0
.line 50
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v2
.line 53
const/4 v0, 0x0
:try_start_7
invoke-virtual {v2, p1, v0}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
:try_end_a
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_7 .. :try_end_a} :catch_f
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_15
move-result-object v0
.line 59
:goto_b
if-nez v0, :cond_1b
move-object v0, v1
.line 86
:goto_e
return-object v0
.line 54
:catch_f
move-exception v0
.line 55
invoke-virtual {v0}, Landroid/content/pm/PackageManager$NameNotFoundException;->printStackTrace()V
move-object v0, v1
.line 58
goto :goto_b
.line 56
:catch_15
move-exception v0
.line 57
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
move-object v0, v1
goto :goto_b
.line 62
:cond_1b
new-instance v3, Landroid/content/Intent;
const-string v4, "android.intent.action.MAIN"
invoke-direct {v3, v4, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V
.line 63
const-string v4, "android.intent.category.LAUNCHER"
invoke-virtual {v3, v4}, Landroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;
.line 64
iget-object v0, v0, Landroid/content/pm/PackageInfo;->packageName:Ljava/lang/String;
invoke-virtual {v3, v0}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
.line 68
const/4 v0, 0x0
:try_start_2d
invoke-virtual {v2, v3, v0}, Landroid/content/pm/PackageManager;->queryIntentActivities(Landroid/content/Intent;I)Ljava/util/List;
:try_end_30
.catch Ljava/lang/Exception; {:try_start_2d .. :try_end_30} :catch_63
move-result-object v0
.line 73
:goto_31
if-eqz v0, :cond_69
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v2
if-nez v2, :cond_69
.line 74
invoke-interface {v0, v5}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/content/pm/ResolveInfo;
.line 75
if-eqz v0, :cond_69
.line 76
iget-object v1, v0, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
iget-object v1, v1, Landroid/content/pm/ActivityInfo;->packageName:Ljava/lang/String;
.line 77
iget-object v0, v0, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
iget-object v2, v0, Landroid/content/pm/ActivityInfo;->name:Ljava/lang/String;
.line 78
new-instance v0, Landroid/content/Intent;
const-string v3, "android.intent.action.MAIN"
invoke-direct {v0, v3}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 79
const/high16 v3, 0x10000000
invoke-virtual {v0, v3}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
.line 80
const-string v3, "android.intent.category.LAUNCHER"
invoke-virtual {v0, v3}, Landroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;
.line 81
new-instance v3, Landroid/content/ComponentName;
invoke-direct {v3, v1, v2}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
.line 82
invoke-virtual {v0, v3}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
goto :goto_e
.line 69
:catch_63
move-exception v0
.line 70
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
move-object v0, v1
goto :goto_31
:cond_69
move-object v0, v1
.line 86
goto :goto_e
.end method
.method public static getAppLabel(Ljava/lang/String;)Ljava/lang/String;
.registers 5
.prologue
const/4 v0, 0x0
.line 20
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_8
.line 33
:cond_7
:goto_7
return-object v0
.line 24
:cond_8
invoke-static {}, Lcom/cmcm/locker/sdk/notificationhelper/impl/util/Commons;->getBaseContext()Landroid/content/Context;
move-result-object v1
.line 26
:try_start_c
invoke-virtual {v1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v2
const/4 v3, 0x0
invoke-virtual {v2, p0, v3}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v2
.line 27
if-eqz v2, :cond_7
.line 28
iget-object v2, v2, Landroid/content/pm/PackageInfo;->applicationInfo:Landroid/content/pm/ApplicationInfo;
invoke-virtual {v1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
invoke-virtual {v2, v1}, Landroid/content/pm/ApplicationInfo;->loadLabel(Landroid/content/pm/PackageManager;)Ljava/lang/CharSequence;
move-result-object v1
invoke-interface {v1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
:try_end_24
.catch Ljava/lang/Exception; {:try_start_c .. :try_end_24} :catch_26
move-result-object v0
goto :goto_7
.line 30
:catch_26
move-exception v1
.line 31
invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
goto :goto_7
.end method
.method public static getPackageIcon(Landroid/content/Context;Ljava/lang/String;)Landroid/graphics/Bitmap;
.registers 5
.prologue
const/4 v1, 0x0
.line 90
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_9
move-object v0, v1
.line 111
:cond_8
:goto_8
return-object v0
.line 93
:cond_9
invoke-static {p0}, Lcom/cmcm/locker/sdk/notificationhelper/impl/util/IConCache;->getInstance(Landroid/content/Context;)Lcom/cmcm/locker/sdk/notificationhelper/impl/util/IConCache;
move-result-object v0
invoke-virtual {v0, p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/util/IConCache;->getBitmapByCache(Ljava/lang/String;)Landroid/graphics/Bitmap;
move-result-object v0
.line 94
if-nez v0, :cond_8
.line 98
:try_start_13
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 99
const/16 v2, 0x80
invoke-virtual {v0, p1, v2}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object v2
.line 100
if-eqz v2, :cond_34
.line 101
invoke-virtual {v2, v0}, Landroid/content/pm/ApplicationInfo;->loadIcon(Landroid/content/pm/PackageManager;)Landroid/graphics/drawable/Drawable;
move-result-object v0
.line 102
if-eqz v0, :cond_34
.line 103
check-cast v0, Landroid/graphics/drawable/BitmapDrawable;
invoke-virtual {v0}, Landroid/graphics/drawable/BitmapDrawable;->getBitmap()Landroid/graphics/Bitmap;
move-result-object v0
.line 104
invoke-static {p0}, Lcom/cmcm/locker/sdk/notificationhelper/impl/util/IConCache;->getInstance(Landroid/content/Context;)Lcom/cmcm/locker/sdk/notificationhelper/impl/util/IConCache;
move-result-object v2
invoke-virtual {v2, p1, v0}, Lcom/cmcm/locker/sdk/notificationhelper/impl/util/IConCache;->addToBitmapCache(Ljava/lang/String;Landroid/graphics/Bitmap;)V
:try_end_32
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_13 .. :try_end_32} :catch_33
goto :goto_8
.line 108
:catch_33
move-exception v0
:cond_34
move-object v0, v1
.line 111
goto :goto_8
.end method
.method public static getPackageIcon(Ljava/lang/String;)Landroid/graphics/Bitmap;
.registers 4
.prologue
const/4 v1, 0x0
.line 115
if-nez p0, :cond_5
move-object v0, v1
.line 132
:goto_4
return-object v0
.line 120
:cond_5
:try_start_5
invoke-static {}, Lcom/cmcm/locker/sdk/notificationhelper/impl/util/Commons;->getBaseContext()Landroid/content/Context;
move-result-object v0
invoke-virtual {v0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 121
const/16 v2, 0x80
invoke-virtual {v0, p0, v2}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object v2
.line 122
if-eqz v2, :cond_23
.line 123
invoke-virtual {v2, v0}, Landroid/content/pm/ApplicationInfo;->loadIcon(Landroid/content/pm/PackageManager;)Landroid/graphics/drawable/Drawable;
move-result-object v0
.line 124
if-eqz v0, :cond_23
.line 125
check-cast v0, Landroid/graphics/drawable/BitmapDrawable;
invoke-virtual {v0}, Landroid/graphics/drawable/BitmapDrawable;->getBitmap()Landroid/graphics/Bitmap;
:try_end_20
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_5 .. :try_end_20} :catch_22
move-result-object v0
goto :goto_4
.line 129
:catch_22
move-exception v0
:cond_23
move-object v0, v1
.line 132
goto :goto_4
.end method
.method public static queryAppInfo(Landroid/content/Context;Ljava/lang/String;)Z
.registers 5
.prologue
const/4 v0, 0x0
.line 37
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_15
if-eqz p0, :cond_15
.line 39
:try_start_9
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
.line 40
const/4 v2, 0x0
invoke-virtual {v1, p1, v2}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
:try_end_11
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_9 .. :try_end_11} :catch_16
move-result-object v1
if-eqz v1, :cond_15
const/4 v0, 0x1
.line 46
:cond_15
:goto_15
return v0
.line 41
:catch_16
move-exception v1
.line 42
invoke-virtual {v1}, Landroid/content/pm/PackageManager$NameNotFoundException;->printStackTrace()V
goto :goto_15
.end method