KcmutilSoLoader.smali
.class public Lcom/cleanmaster/hpsharelib/base/lib/KcmutilSoLoader;
.super Ljava/lang/Object;
.source "KcmutilSoLoader.java"
# static fields
.field public static final LIB_NAME:Ljava/lang/String; = "kcmutil"
.field private static volatile mLoaded:Z
.field private static mMutex:Ljava/lang/Object;
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 6
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Lcom/cleanmaster/hpsharelib/base/lib/KcmutilSoLoader;->mMutex:Ljava/lang/Object;
.line 8
const/4 v0, 0x0
sput-boolean v0, Lcom/cleanmaster/hpsharelib/base/lib/KcmutilSoLoader;->mLoaded:Z
return-void
.end method
.method public constructor <init>()V
.registers 1
.prologue
.line 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static doLoad(Z)Z
.registers 6
.prologue
const/4 v1, 0x0
const/4 v0, 0x1
.line 12
sget-boolean v2, Lcom/cleanmaster/hpsharelib/base/lib/KcmutilSoLoader;->mLoaded:Z
if-eqz v2, :cond_7
.line 34
:goto_6
return v0
.line 17
:cond_7
sget-object v2, Lcom/cleanmaster/hpsharelib/base/lib/KcmutilSoLoader;->mMutex:Ljava/lang/Object;
monitor-enter v2
.line 18
:try_start_a
sget-boolean v3, Lcom/cleanmaster/hpsharelib/base/lib/KcmutilSoLoader;->mLoaded:Z
if-eqz v3, :cond_13
.line 19
monitor-exit v2
goto :goto_6
.line 31
:catchall_10
move-exception v0
monitor-exit v2
:try_end_12
.catchall {:try_start_a .. :try_end_12} :catchall_10
throw v0
.line 23
:cond_13
:try_start_13
invoke-static {}, Lcom/cleanmaster/hpsharelib/base/lib/LibLoader;->getInstance()Lcom/cleanmaster/hpsharelib/base/lib/LibLoader;
move-result-object v3
const-string v4, "kcmutil"
invoke-virtual {v3, v4}, Lcom/cleanmaster/hpsharelib/base/lib/LibLoader;->loadLibrary(Ljava/lang/String;)Ljava/lang/String;
:try_end_1c
.catch Ljava/lang/Exception; {:try_start_13 .. :try_end_1c} :catch_20
.catch Ljava/lang/Error; {:try_start_13 .. :try_end_1c} :catch_23
.catchall {:try_start_13 .. :try_end_1c} :catchall_10
.line 30
:goto_1c
:try_start_1c
sput-boolean v0, Lcom/cleanmaster/hpsharelib/base/lib/KcmutilSoLoader;->mLoaded:Z
.line 31
monitor-exit v2
:try_end_1f
.catchall {:try_start_1c .. :try_end_1f} :catchall_10
goto :goto_6
.line 25
:catch_20
move-exception v0
move v0, v1
.line 29
goto :goto_1c
.line 27
:catch_23
move-exception v0
move v0, v1
.line 28
goto :goto_1c
.end method