b.smali

.class public Lcom/cmcm/xiaobao/phone/update/a/b;
.super Ljava/lang/Object;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/cmcm/xiaobao/phone/update/a/b$a;,
        Lcom/cmcm/xiaobao/phone/update/a/b$b;,
        Lcom/cmcm/xiaobao/phone/update/a/b$c;
    }
.end annotation


# instance fields
.field private a:Landroid/app/DownloadManager;

.field private b:Lcom/cmcm/xiaobao/phone/update/a/a;

.field private c:Lcom/cmcm/xiaobao/phone/update/a/b$b;

.field private d:Lcom/cmcm/xiaobao/phone/update/a/b$a;

.field private e:J

.field private f:Ljava/lang/String;

.field private g:Lcom/cmcm/xiaobao/phone/update/a/b$c;

.field private h:J

.field private i:Landroid/content/Context;


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 4

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

    const-wide/16 v0, 0x0

    iput-wide v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->e:J

    iput-object p1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->i:Landroid/content/Context;

    return-void
.end method

.method private a(J)V
    .registers 6

    invoke-static {}, Lcom/cmcm/xiaobao/phone/commons/sharedpref/SimpleSharedPref;->getService()Lcom/cmcm/xiaobao/phone/commons/sharedpref/ISharedPref;

    move-result-object v0

    invoke-interface {v0}, Lcom/cmcm/xiaobao/phone/commons/sharedpref/ISharedPref;->downloadId()Lcom/cmcm/xiaobao/phone/commons/sharedpref/core/Call;

    move-result-object v0

    invoke-static {p1, p2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v1

    invoke-interface {v0, v1}, Lcom/cmcm/xiaobao/phone/commons/sharedpref/core/Call;->put(Ljava/lang/Object;)V

    return-void
.end method

.method private static a(Landroid/content/Context;)V
    .registers 4

    const/high16 v2, 0x10000000

    :try_start_2
    new-instance v0, Landroid/content/Intent;

    const-string/jumbo v1, "android.settings.APPLICATION_DETAILS_SETTINGS"

    invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    const-string/jumbo v1, "package:com.android.providers.downloads"

    invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;

    move-result-object v1

    invoke-virtual {v0, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;

    const/high16 v1, 0x10000000

    invoke-virtual {v0, v1}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;

    invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
    :try_end_1c
    .catch Landroid/content/ActivityNotFoundException; {:try_start_2 .. :try_end_1c} :catch_1d

    :goto_1c
    return-void

    :catch_1d
    move-exception v0

    invoke-virtual {v0}, Landroid/content/ActivityNotFoundException;->printStackTrace()V

    new-instance v0, Landroid/content/Intent;

    const-string/jumbo v1, "android.settings.MANAGE_APPLICATIONS_SETTINGS"

    invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    invoke-virtual {v0, v2}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;

    invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V

    goto :goto_1c
.end method

.method static synthetic a(Lcom/cmcm/xiaobao/phone/update/a/b;)V
    .registers 1

    invoke-direct {p0}, Lcom/cmcm/xiaobao/phone/update/a/b;->f()V

    return-void
.end method

.method static synthetic b(Lcom/cmcm/xiaobao/phone/update/a/b;)J
    .registers 3

    iget-wide v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->e:J

    return-wide v0
.end method

.method private static b(Landroid/content/Context;)Z
    .registers 8

    const/4 v6, 0x3

    const/4 v5, 0x2

    const/4 v0, 0x1

    const/4 v1, 0x0

    invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;

    move-result-object v2

    const-string/jumbo v3, "com.android.providers.downloads"

    invoke-virtual {v2, v3}, Landroid/content/pm/PackageManager;->getApplicationEnabledSetting(Ljava/lang/String;)I

    move-result v2

    sget v3, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v4, 0x12

    if-le v3, v4, :cond_1f

    if-eq v2, v5, :cond_1d

    if-eq v2, v6, :cond_1d

    const/4 v3, 0x4

    if-eq v2, v3, :cond_1d

    :cond_1c
    :goto_1c
    return v0

    :cond_1d
    move v0, v1

    goto :goto_1c

    :cond_1f
    if-eq v2, v5, :cond_23

    if-ne v2, v6, :cond_1c

    :cond_23
    move v0, v1

    goto :goto_1c
.end method

.method static synthetic c(Lcom/cmcm/xiaobao/phone/update/a/b;)Lcom/cmcm/xiaobao/phone/update/a/a;
    .registers 2

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->b:Lcom/cmcm/xiaobao/phone/update/a/a;

    return-object v0
.end method

.method private d()J
    .registers 3

    invoke-static {}, Lcom/cmcm/xiaobao/phone/commons/sharedpref/SimpleSharedPref;->getService()Lcom/cmcm/xiaobao/phone/commons/sharedpref/ISharedPref;

    move-result-object v0

    invoke-interface {v0}, Lcom/cmcm/xiaobao/phone/commons/sharedpref/ISharedPref;->downloadId()Lcom/cmcm/xiaobao/phone/commons/sharedpref/core/Call;

    move-result-object v0

    invoke-interface {v0}, Lcom/cmcm/xiaobao/phone/commons/sharedpref/core/Call;->get()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/Long;

    invoke-virtual {v0}, Ljava/lang/Long;->longValue()J

    move-result-wide v0

    return-wide v0
.end method

.method static synthetic d(Lcom/cmcm/xiaobao/phone/update/a/b;)Lcom/cmcm/xiaobao/phone/update/a/b$c;
    .registers 2

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->g:Lcom/cmcm/xiaobao/phone/update/a/b$c;

    return-object v0
.end method

.method static synthetic e(Lcom/cmcm/xiaobao/phone/update/a/b;)Ljava/lang/String;
    .registers 2

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->f:Ljava/lang/String;

    return-object v0
.end method

.method private e()Z
    .registers 4

    const/4 v0, 0x0

    :try_start_1
    new-instance v1, Ljava/io/File;

    invoke-static {}, Lcom/cmcm/xiaobao/phone/update/appupdate/b;->a()Ljava/lang/String;

    move-result-object v2

    invoke-direct {v1, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V

    invoke-virtual {v1}, Ljava/io/File;->exists()Z

    move-result v2

    if-eqz v2, :cond_16

    invoke-virtual {v1}, Ljava/io/File;->isDirectory()Z

    move-result v2

    if-nez v2, :cond_1c

    :cond_16
    invoke-virtual {v1}, Ljava/io/File;->mkdirs()Z
    :try_end_19
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_19} :catch_1e

    move-result v1

    if-eqz v1, :cond_1d

    :cond_1c
    const/4 v0, 0x1

    :cond_1d
    :goto_1d
    return v0

    :catch_1e
    move-exception v1

    const-string/jumbo v2, "initFolder"

    invoke-virtual {v1}, Ljava/lang/Exception;->toString()Ljava/lang/String;

    move-result-object v1

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

    goto :goto_1d
.end method

.method private f()V
    .registers 7

    const/4 v5, 0x1

    const/4 v4, 0x0

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->b:Lcom/cmcm/xiaobao/phone/update/a/a;

    iget-wide v2, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->e:J

    invoke-virtual {v0, v2, v3}, Lcom/cmcm/xiaobao/phone/update/a/a;->b(J)[I

    move-result-object v0

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->g:Lcom/cmcm/xiaobao/phone/update/a/b$c;

    if-eqz v1, :cond_23

    aget v1, v0, v4

    if-lez v1, :cond_23

    aget v1, v0, v5

    if-lez v1, :cond_23

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->g:Lcom/cmcm/xiaobao/phone/update/a/b$c;

    aget v2, v0, v4

    mul-int/lit8 v2, v2, 0x64

    aget v0, v0, v5

    div-int v0, v2, v0

    invoke-interface {v1, v0}, Lcom/cmcm/xiaobao/phone/update/a/b$c;->a(I)V

    :cond_23
    return-void
.end method


# virtual methods
.method public a()V
    .registers 3

    :try_start_0
    invoke-static {}, Lcom/cmcm/xiaobao/phone/OrionApplication;->getAppContext()Landroid/content/Context;

    move-result-object v0

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->d:Lcom/cmcm/xiaobao/phone/update/a/b$a;

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

    invoke-static {}, Lcom/cmcm/xiaobao/phone/OrionApplication;->getAppContext()Landroid/content/Context;

    move-result-object v0

    invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v0

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->c:Lcom/cmcm/xiaobao/phone/update/a/b$b;

    invoke-virtual {v0, v1}, Landroid/content/ContentResolver;->unregisterContentObserver(Landroid/database/ContentObserver;)V
    :try_end_16
    .catch Ljava/lang/IllegalArgumentException; {:try_start_0 .. :try_end_16} :catch_17

    :goto_16
    return-void

    :catch_17
    move-exception v0

    goto :goto_16
.end method

.method public a(Lcom/cmcm/xiaobao/phone/update/a/b$c;Ljava/lang/String;)V
    .registers 3

    invoke-virtual {p0}, Lcom/cmcm/xiaobao/phone/update/a/b;->b()V

    iput-object p1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->g:Lcom/cmcm/xiaobao/phone/update/a/b$c;

    iput-object p2, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->f:Ljava/lang/String;

    return-void
.end method

.method public a(Ljava/lang/String;Ljava/lang/String;Lcom/cmcm/xiaobao/phone/update/a/b$c;)V
    .registers 8

    const/4 v3, 0x0

    if-eqz p3, :cond_5

    iput-object p3, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->g:Lcom/cmcm/xiaobao/phone/update/a/b$c;

    :cond_5
    iput-object p2, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->f:Ljava/lang/String;

    invoke-direct {p0}, Lcom/cmcm/xiaobao/phone/update/a/b;->e()Z

    move-result v0

    if-nez v0, :cond_e

    :goto_d
    return-void

    :cond_e
    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->i:Landroid/content/Context;

    invoke-static {v0}, Lcom/cmcm/xiaobao/phone/update/a/b;->b(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_1c

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->i:Landroid/content/Context;

    invoke-static {v0}, Lcom/cmcm/xiaobao/phone/update/a/b;->a(Landroid/content/Context;)V

    goto :goto_d

    :cond_1c
    new-instance v0, Landroid/app/DownloadManager$Request;

    invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;

    move-result-object v1

    invoke-direct {v0, v1}, Landroid/app/DownloadManager$Request;-><init>(Landroid/net/Uri;)V

    sget-object v1, Landroid/os/Environment;->DIRECTORY_DOWNLOADS:Ljava/lang/String;

    iget-object v2, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->f:Ljava/lang/String;

    invoke-static {v2}, Lcom/cmcm/xiaobao/phone/update/appupdate/b;->b(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v0, v1, v2}, Landroid/app/DownloadManager$Request;->setDestinationInExternalPublicDir(Ljava/lang/String;Ljava/lang/String;)Landroid/app/DownloadManager$Request;

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->i:Landroid/content/Context;

    const v2, 0x7f0a0317

    invoke-virtual {v1, v2}, Landroid/content/Context;->getString(I)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Landroid/app/DownloadManager$Request;->setTitle(Ljava/lang/CharSequence;)Landroid/app/DownloadManager$Request;

    invoke-virtual {v0, v3}, Landroid/app/DownloadManager$Request;->setNotificationVisibility(I)Landroid/app/DownloadManager$Request;

    invoke-virtual {v0, v3}, Landroid/app/DownloadManager$Request;->setVisibleInDownloadsUi(Z)Landroid/app/DownloadManager$Request;

    const-string/jumbo v1, "application/cn.trinea.download.file"

    invoke-virtual {v0, v1}, Landroid/app/DownloadManager$Request;->setMimeType(Ljava/lang/String;)Landroid/app/DownloadManager$Request;

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->a:Landroid/app/DownloadManager;

    invoke-virtual {v1, v0}, Landroid/app/DownloadManager;->enqueue(Landroid/app/DownloadManager$Request;)J

    move-result-wide v0

    iput-wide v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->e:J

    iget-wide v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->e:J

    invoke-direct {p0, v0, v1}, Lcom/cmcm/xiaobao/phone/update/a/b;->a(J)V

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v0

    const-wide/16 v2, 0x3e8

    div-long/2addr v0, v2

    iput-wide v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->h:J

    goto :goto_d
.end method

.method public b()V
    .registers 5

    invoke-direct {p0}, Lcom/cmcm/xiaobao/phone/update/a/b;->d()J

    move-result-wide v0

    iput-wide v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->e:J

    :try_start_6
    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->i:Landroid/content/Context;

    const-string/jumbo v1, "download"

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

    move-result-object v0

    check-cast v0, Landroid/app/DownloadManager;

    iput-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->a:Landroid/app/DownloadManager;
    :try_end_13
    .catch Ljava/lang/Exception; {:try_start_6 .. :try_end_13} :catch_4c

    :goto_13
    new-instance v0, Lcom/cmcm/xiaobao/phone/update/a/a;

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->a:Landroid/app/DownloadManager;

    invoke-direct {v0, v1}, Lcom/cmcm/xiaobao/phone/update/a/a;-><init>(Landroid/app/DownloadManager;)V

    iput-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->b:Lcom/cmcm/xiaobao/phone/update/a/a;

    new-instance v0, Lcom/cmcm/xiaobao/phone/update/a/b$b;

    invoke-direct {v0, p0}, Lcom/cmcm/xiaobao/phone/update/a/b$b;-><init>(Lcom/cmcm/xiaobao/phone/update/a/b;)V

    iput-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->c:Lcom/cmcm/xiaobao/phone/update/a/b$b;

    new-instance v0, Lcom/cmcm/xiaobao/phone/update/a/b$a;

    invoke-direct {v0, p0}, Lcom/cmcm/xiaobao/phone/update/a/b$a;-><init>(Lcom/cmcm/xiaobao/phone/update/a/b;)V

    iput-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->d:Lcom/cmcm/xiaobao/phone/update/a/b$a;

    invoke-static {}, Lcom/cmcm/xiaobao/phone/OrionApplication;->getAppContext()Landroid/content/Context;

    move-result-object v0

    invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v0

    sget-object v1, Lcom/cmcm/xiaobao/phone/update/a/a;->a:Landroid/net/Uri;

    const/4 v2, 0x1

    iget-object v3, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->c:Lcom/cmcm/xiaobao/phone/update/a/b$b;

    invoke-virtual {v0, v1, v2, v3}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V

    invoke-static {}, Lcom/cmcm/xiaobao/phone/OrionApplication;->getAppContext()Landroid/content/Context;

    move-result-object v0

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->d:Lcom/cmcm/xiaobao/phone/update/a/b$a;

    new-instance v2, Landroid/content/IntentFilter;

    const-string/jumbo v3, "android.intent.action.DOWNLOAD_COMPLETE"

    invoke-direct {v2, v3}, Landroid/content/IntentFilter;-><init>(Ljava/lang/String;)V

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

    return-void

    :catch_4c
    move-exception v0

    invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V

    goto :goto_13
.end method

.method public c()Z
    .registers 5

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/update/a/b;->b:Lcom/cmcm/xiaobao/phone/update/a/a;

    invoke-direct {p0}, Lcom/cmcm/xiaobao/phone/update/a/b;->d()J

    move-result-wide v2

    invoke-virtual {v0, v2, v3}, Lcom/cmcm/xiaobao/phone/update/a/a;->a(J)I

    move-result v0

    const/4 v1, 0x2

    if-ne v0, v1, :cond_f

    const/4 v0, 0x1

    :goto_e
    return v0

    :cond_f
    const/4 v0, 0x0

    goto :goto_e
.end method