a.smali

.class public Lcom/cleanmaster/o/a;
.super Ljava/lang/Object;
.source "MusicPlayer.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/cleanmaster/o/a$a;
    }
.end annotation


# static fields
.field private static final a:Ljava/lang/String;

.field private static final b:Ljava/lang/String;


# instance fields
.field private c:Landroid/media/MediaPlayer;

.field private d:Lcom/cleanmaster/o/a$a;

.field private e:Z

.field private f:Z

.field private g:Z


# direct methods
.method static constructor <clinit>()V
    .registers 2

    .prologue
    .line 22
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    invoke-static {}, Lcom/cleanmaster/hpcommonlib/HostHelper;->getPackageName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    const-string v1, ".foreground"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    sput-object v0, Lcom/cleanmaster/o/a;->a:Ljava/lang/String;

    .line 23
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    invoke-static {}, Lcom/cleanmaster/hpcommonlib/HostHelper;->getPackageName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    const-string v1, ".background"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    sput-object v0, Lcom/cleanmaster/o/a;->b:Ljava/lang/String;

    return-void
.end method

.method public constructor <init>()V
    .registers 2

    .prologue
    const/4 v0, 0x0

    .line 31
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 27
    iput-boolean v0, p0, Lcom/cleanmaster/o/a;->e:Z

    .line 28
    iput-boolean v0, p0, Lcom/cleanmaster/o/a;->f:Z

    .line 32
    return-void
.end method

.method static synthetic a()Ljava/lang/String;
    .registers 1

    .prologue
    .line 20
    sget-object v0, Lcom/cleanmaster/o/a;->b:Ljava/lang/String;

    return-object v0
.end method

.method static synthetic a(Lcom/cleanmaster/o/a;)Z
    .registers 2

    .prologue
    .line 20
    iget-boolean v0, p0, Lcom/cleanmaster/o/a;->g:Z

    return v0
.end method

.method static synthetic a(Lcom/cleanmaster/o/a;Z)Z
    .registers 2

    .prologue
    .line 20
    iput-boolean p1, p0, Lcom/cleanmaster/o/a;->f:Z

    return p1
.end method

.method static synthetic b()Ljava/lang/String;
    .registers 1

    .prologue
    .line 20
    sget-object v0, Lcom/cleanmaster/o/a;->a:Ljava/lang/String;

    return-object v0
.end method

.method static synthetic b(Lcom/cleanmaster/o/a;)V
    .registers 1

    .prologue
    .line 20
    invoke-direct {p0}, Lcom/cleanmaster/o/a;->c()V

    return-void
.end method

.method private c()V
    .registers 3

    .prologue
    const/4 v0, 0x1

    .line 53
    iput-boolean v0, p0, Lcom/cleanmaster/o/a;->g:Z

    .line 54
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    if-eqz v0, :cond_1e

    iget-boolean v0, p0, Lcom/cleanmaster/o/a;->e:Z

    if-nez v0, :cond_1e

    iget-boolean v0, p0, Lcom/cleanmaster/o/a;->f:Z

    if-eqz v0, :cond_1e

    .line 56
    :try_start_f
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    invoke-virtual {v0}, Landroid/media/MediaPlayer;->start()V

    .line 57
    const-string v0, "mucpla"

    const-string v1, "start"

    invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 58
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/cleanmaster/o/a;->e:Z
    :try_end_1e
    .catch Ljava/lang/IllegalStateException; {:try_start_f .. :try_end_1e} :catch_1f

    .line 63
    :cond_1e
    :goto_1e
    return-void

    .line 59
    :catch_1f
    move-exception v0

    .line 60
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/cleanmaster/o/a;->e:Z

    goto :goto_1e
.end method

.method static synthetic c(Lcom/cleanmaster/o/a;)V
    .registers 1

    .prologue
    .line 20
    invoke-direct {p0}, Lcom/cleanmaster/o/a;->d()V

    return-void
.end method

.method private static c(Landroid/content/Context;)Z
    .registers 2

    .prologue
    .line 80
    :try_start_0
    const-string v0, "power"

    invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/os/PowerManager;

    invoke-virtual {v0}, Landroid/os/PowerManager;->isScreenOn()Z
    :try_end_b
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_b} :catch_d

    move-result v0

    .line 82
    :goto_c
    return v0

    .line 81
    :catch_d
    move-exception v0

    .line 82
    const/4 v0, 0x0

    goto :goto_c
.end method

.method private d()V
    .registers 4

    .prologue
    const/4 v2, 0x0

    .line 66
    iput-boolean v2, p0, Lcom/cleanmaster/o/a;->g:Z

    .line 67
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    if-eqz v0, :cond_1e

    iget-boolean v0, p0, Lcom/cleanmaster/o/a;->e:Z

    if-eqz v0, :cond_1e

    iget-boolean v0, p0, Lcom/cleanmaster/o/a;->f:Z

    if-eqz v0, :cond_1e

    .line 69
    :try_start_f
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    invoke-virtual {v0}, Landroid/media/MediaPlayer;->pause()V

    .line 70
    const-string v0, "mucpla"

    const-string v1, "pause"

    invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 71
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/cleanmaster/o/a;->e:Z
    :try_end_1e
    .catch Ljava/lang/IllegalStateException; {:try_start_f .. :try_end_1e} :catch_1f

    .line 76
    :cond_1e
    :goto_1e
    return-void

    .line 72
    :catch_1f
    move-exception v0

    .line 73
    iput-boolean v2, p0, Lcom/cleanmaster/o/a;->e:Z

    goto :goto_1e
.end method

.method private d(Landroid/content/Context;)V
    .registers 9

    .prologue
    const/4 v0, 0x0

    .line 87
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    sget v2, Lcom/cleanmaster/daemon/R$raw;->silent:I

    invoke-virtual {v1, v2}, Landroid/content/res/Resources;->openRawResourceFd(I)Landroid/content/res/AssetFileDescriptor;

    move-result-object v6

    .line 88
    if-eqz v6, :cond_80

    .line 90
    :try_start_d
    new-instance v1, Landroid/media/MediaPlayer;

    invoke-direct {v1}, Landroid/media/MediaPlayer;-><init>()V

    iput-object v1, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    .line 92
    sget v1, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v2, 0x15

    if-lt v1, v2, :cond_39

    .line 93
    new-instance v0, Landroid/media/AudioAttributes$Builder;

    invoke-direct {v0}, Landroid/media/AudioAttributes$Builder;-><init>()V

    invoke-virtual {v0}, Landroid/media/AudioAttributes$Builder;->build()Landroid/media/AudioAttributes;

    move-result-object v0

    .line 94
    iget-object v1, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    invoke-virtual {v1, v0}, Landroid/media/MediaPlayer;->setAudioAttributes(Landroid/media/AudioAttributes;)V

    .line 95
    const-string v0, "audio"

    invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/media/AudioManager;

    .line 96
    invoke-virtual {v0}, Landroid/media/AudioManager;->generateAudioSessionId()I

    move-result v0

    const/4 v1, 0x0

    invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I

    move-result v0

    .line 99
    :cond_39
    iget-object v1, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    invoke-virtual {v1, v0}, Landroid/media/MediaPlayer;->setAudioSessionId(I)V

    .line 100
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    const/4 v1, 0x1

    invoke-virtual {v0, p1, v1}, Landroid/media/MediaPlayer;->setWakeMode(Landroid/content/Context;I)V

    .line 101
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getFileDescriptor()Ljava/io/FileDescriptor;

    move-result-object v1

    invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getStartOffset()J

    move-result-wide v2

    .line 102
    invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->getDeclaredLength()J

    move-result-wide v4

    .line 101
    invoke-virtual/range {v0 .. v5}, Landroid/media/MediaPlayer;->setDataSource(Ljava/io/FileDescriptor;JJ)V

    .line 103
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    const/high16 v1, 0x3f800000    # 1.0f

    const/high16 v2, 0x3f800000    # 1.0f

    invoke-virtual {v0, v1, v2}, Landroid/media/MediaPlayer;->setVolume(FF)V

    .line 104
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    const/4 v1, 0x1

    invoke-virtual {v0, v1}, Landroid/media/MediaPlayer;->setLooping(Z)V

    .line 105
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    new-instance v1, Lcom/cleanmaster/o/b;

    invoke-direct {v1, p0}, Lcom/cleanmaster/o/b;-><init>(Lcom/cleanmaster/o/a;)V

    invoke-virtual {v0, v1}, Landroid/media/MediaPlayer;->setOnPreparedListener(Landroid/media/MediaPlayer$OnPreparedListener;)V

    .line 113
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    new-instance v1, Lcom/cleanmaster/o/c;

    invoke-direct {v1, p0}, Lcom/cleanmaster/o/c;-><init>(Lcom/cleanmaster/o/a;)V

    invoke-virtual {v0, v1}, Landroid/media/MediaPlayer;->setOnErrorListener(Landroid/media/MediaPlayer$OnErrorListener;)V

    .line 120
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    invoke-virtual {v0}, Landroid/media/MediaPlayer;->prepareAsync()V
    :try_end_7d
    .catch Ljava/lang/Exception; {:try_start_d .. :try_end_7d} :catch_86
    .catchall {:try_start_d .. :try_end_7d} :catchall_90

    .line 125
    :try_start_7d
    invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
    :try_end_80
    .catch Ljava/io/IOException; {:try_start_7d .. :try_end_80} :catch_81

    .line 131
    :cond_80
    :goto_80
    return-void

    .line 126
    :catch_81
    move-exception v0

    .line 127
    invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V

    goto :goto_80

    .line 121
    :catch_86
    move-exception v0

    .line 125
    :try_start_87
    invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
    :try_end_8a
    .catch Ljava/io/IOException; {:try_start_87 .. :try_end_8a} :catch_8b

    goto :goto_80

    .line 126
    :catch_8b
    move-exception v0

    .line 127
    invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V

    goto :goto_80

    .line 124
    :catchall_90
    move-exception v0

    .line 125
    :try_start_91
    invoke-virtual {v6}, Landroid/content/res/AssetFileDescriptor;->close()V
    :try_end_94
    .catch Ljava/io/IOException; {:try_start_91 .. :try_end_94} :catch_95

    .line 128
    :goto_94
    throw v0

    .line 126
    :catch_95
    move-exception v1

    .line 127
    invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V

    goto :goto_94
.end method

.method private e(Landroid/content/Context;)V
    .registers 5

    .prologue
    .line 134
    iget-object v0, p0, Lcom/cleanmaster/o/a;->d:Lcom/cleanmaster/o/a$a;

    if-nez v0, :cond_25

    .line 135
    new-instance v0, Landroid/content/IntentFilter;

    invoke-direct {v0}, Landroid/content/IntentFilter;-><init>()V

    .line 136
    const-string v1, "android.intent.action.SCREEN_OFF"

    invoke-virtual {v0, v1}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V

    .line 137
    sget-object v1, Lcom/cleanmaster/o/a;->a:Ljava/lang/String;

    invoke-virtual {v0, v1}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V

    .line 138
    sget-object v1, Lcom/cleanmaster/o/a;->b:Ljava/lang/String;

    invoke-virtual {v0, v1}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V

    .line 140
    new-instance v1, Lcom/cleanmaster/o/a$a;

    const/4 v2, 0x0

    invoke-direct {v1, p0, v2}, Lcom/cleanmaster/o/a$a;-><init>(Lcom/cleanmaster/o/a;Lcom/cleanmaster/o/b;)V

    iput-object v1, p0, Lcom/cleanmaster/o/a;->d:Lcom/cleanmaster/o/a$a;

    .line 141
    iget-object v1, p0, Lcom/cleanmaster/o/a;->d:Lcom/cleanmaster/o/a$a;

    invoke-virtual {p1, v1, v0}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;

    .line 143
    :cond_25
    return-void
.end method

.method private f(Landroid/content/Context;)V
    .registers 3

    .prologue
    .line 146
    iget-object v0, p0, Lcom/cleanmaster/o/a;->d:Lcom/cleanmaster/o/a$a;

    if-eqz v0, :cond_c

    .line 147
    iget-object v0, p0, Lcom/cleanmaster/o/a;->d:Lcom/cleanmaster/o/a$a;

    invoke-virtual {p1, v0}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V

    .line 148
    const/4 v0, 0x0

    iput-object v0, p0, Lcom/cleanmaster/o/a;->d:Lcom/cleanmaster/o/a$a;

    .line 150
    :cond_c
    return-void
.end method


# virtual methods
.method public a(Landroid/content/Context;)V
    .registers 3

    .prologue
    .line 35
    invoke-static {p1}, Lcom/cleanmaster/o/a;->c(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_10

    const/4 v0, 0x1

    :goto_7
    iput-boolean v0, p0, Lcom/cleanmaster/o/a;->g:Z

    .line 36
    invoke-direct {p0, p1}, Lcom/cleanmaster/o/a;->d(Landroid/content/Context;)V

    .line 37
    invoke-direct {p0, p1}, Lcom/cleanmaster/o/a;->e(Landroid/content/Context;)V

    .line 38
    return-void

    .line 35
    :cond_10
    const/4 v0, 0x0

    goto :goto_7
.end method

.method public b(Landroid/content/Context;)V
    .registers 4

    .prologue
    const/4 v1, 0x0

    .line 41
    invoke-direct {p0, p1}, Lcom/cleanmaster/o/a;->f(Landroid/content/Context;)V

    .line 42
    invoke-direct {p0}, Lcom/cleanmaster/o/a;->d()V

    .line 43
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    if-eqz v0, :cond_13

    .line 44
    iget-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    invoke-virtual {v0}, Landroid/media/MediaPlayer;->release()V

    .line 45
    const/4 v0, 0x0

    iput-object v0, p0, Lcom/cleanmaster/o/a;->c:Landroid/media/MediaPlayer;

    .line 47
    :cond_13
    iput-boolean v1, p0, Lcom/cleanmaster/o/a;->f:Z

    .line 48
    iput-boolean v1, p0, Lcom/cleanmaster/o/a;->e:Z

    .line 49
    iput-boolean v1, p0, Lcom/cleanmaster/o/a;->g:Z

    .line 50
    return-void
.end method