a.smali

.class public final Lcn/jiguang/w/a;
.super Ljava/lang/Object;


# direct methods
.method public constructor <init>()V
    .registers 1

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

    return-void
.end method

.method public static a(Landroid/content/Context;I)V
    .registers 8

    const/4 v1, 0x1

    const/4 v2, 0x0

    invoke-static {p0}, Lcn/jiguang/f/f;->e(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v5

    new-instance v0, Lcn/jiguang/w/a;

    invoke-direct {v0}, Lcn/jiguang/w/a;-><init>()V

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

    const/16 v3, 0x18

    if-lt v0, v3, :cond_86

    invoke-static {p0}, Lcn/jiguang/w/a;->a(Landroid/content/Context;)Z

    move-result v0

    :goto_15
    invoke-static {v5}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v3

    if-eqz v3, :cond_8b

    :cond_1b
    :goto_1b
    const-string v2, "JNotificationState"

    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, "lastCacheNotificationState:"

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

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

    move-result-object v3

    const-string v4, ",currentNotificationSate:"

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

    move-result-object v3

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

    move-result-object v3

    const-string v4, ",isNeedReport:"

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

    move-result-object v3

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

    move-result-object v3

    const-string v4, ",triggerScene:"

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

    move-result-object v3

    invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v3

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

    move-result-object v3

    invoke-static {v2, v3}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    if-eqz v1, :cond_d0

    :try_start_4f
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V

    const-string v2, "notification_state"

    invoke-virtual {v1, v2, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Z)Lorg/json/JSONObject;

    const-string v2, ""

    invoke-static {p0, v2}, Lcn/jiguang/ap/a;->b(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    const-string v3, "imei"

    invoke-static {p0, v2}, Lcn/jiguang/ap/a;->b(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v3, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "device_id"

    invoke-static {p0}, Lcn/jiguang/sdk/impl/b;->b(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "trigger_scene"

    invoke-virtual {v1, v2, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;

    const-string v2, "android_notification_state"

    invoke-static {p0, v1, v2}, Lcn/jiguang/f/i;->a(Landroid/content/Context;Lorg/json/JSONObject;Ljava/lang/String;)Lorg/json/JSONObject;

    invoke-static {p0, v1}, Lcn/jiguang/f/i;->a(Landroid/content/Context;Ljava/lang/Object;)V

    if-eqz v0, :cond_b3

    const-string v0, "ON"

    :goto_82
    invoke-static {p0, v0}, Lcn/jiguang/f/f;->n(Landroid/content/Context;Ljava/lang/String;)V
    :try_end_85
    .catch Ljava/lang/Throwable; {:try_start_4f .. :try_end_85} :catch_b6

    :goto_85
    return-void

    :cond_86
    invoke-static {p0}, Lcn/jiguang/w/a;->b(Landroid/content/Context;)Z

    move-result v0

    goto :goto_15

    :cond_8b
    const-string v3, "ON"

    invoke-static {v3, v5}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z

    move-result v3

    if-eqz v3, :cond_9b

    move v4, v1

    move v3, v2

    :goto_95
    if-nez v3, :cond_a9

    if-ne v4, v0, :cond_1b

    move v1, v2

    goto :goto_1b

    :cond_9b
    const-string v3, "OFF"

    invoke-static {v3, v5}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z

    move-result v3

    if-eqz v3, :cond_a6

    move v4, v2

    move v3, v2

    goto :goto_95

    :cond_a6
    move v4, v2

    move v3, v1

    goto :goto_95

    :cond_a9
    const-string v1, "JNotificationState"

    const-string v2, "notification state do not changed"

    invoke-static {v1, v2}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    move v1, v3

    goto/16 :goto_1b

    :cond_b3
    :try_start_b3
    const-string v0, "OFF"
    :try_end_b5
    .catch Ljava/lang/Throwable; {:try_start_b3 .. :try_end_b5} :catch_b6

    goto :goto_82

    :catch_b6
    move-exception v0

    const-string v1, "JNotificationState"

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "report notification state failed, error:"

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

    invoke-virtual {v0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v2, v0}, 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

    invoke-static {v1, v0}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_85

    :cond_d0
    const-string v0, "JNotificationState"

    const-string v1, "do not need report notification state"

    invoke-static {v0, v1}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_85
.end method

.method private static a(Landroid/content/Context;)Z
    .registers 5
    .annotation build Landroid/annotation/TargetApi;
        value = 0x18
    .end annotation

    :try_start_0
    const-string v0, "notification"

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

    move-result-object v0

    check-cast v0, Landroid/app/NotificationManager;

    invoke-virtual {v0}, Landroid/app/NotificationManager;->areNotificationsEnabled()Z
    :try_end_b
    .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_b} :catch_d

    move-result v0

    :goto_c
    return v0

    :catch_d
    move-exception v0

    const-string v1, "JNotificationState"

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "invoke areNotificationsEnabled method failed, error:"

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

    invoke-virtual {v0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v2, v0}, 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

    invoke-static {v1, v0}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V

    const/4 v0, 0x1

    goto :goto_c
.end method

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

    const/4 v3, 0x0

    const/4 v2, 0x1

    :try_start_2
    const-string v0, "appops"

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

    move-result-object v0

    check-cast v0, Landroid/app/AppOpsManager;

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

    move-result-object v1

    invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;

    move-result-object v4

    invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object v4

    iget v5, v1, Landroid/content/pm/ApplicationInfo;->uid:I

    const-class v1, Landroid/app/AppOpsManager;

    invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;

    move-result-object v1

    invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;

    move-result-object v1

    const-string v6, "checkOpNoThrow"

    const/4 v7, 0x3

    new-array v7, v7, [Ljava/lang/Class;

    const/4 v8, 0x0

    sget-object v9, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    aput-object v9, v7, v8

    const/4 v8, 0x1

    sget-object v9, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;

    aput-object v9, v7, v8

    const/4 v8, 0x2

    const-class v9, Ljava/lang/String;

    aput-object v9, v7, v8

    invoke-virtual {v1, v6, v7}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v6

    const-string v7, "OP_POST_NOTIFICATION"

    invoke-virtual {v1, v7}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;

    move-result-object v1

    const-class v7, Ljava/lang/Integer;

    invoke-virtual {v1, v7}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/lang/Integer;

    invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I

    move-result v1

    const/4 v7, 0x3

    new-array v7, v7, [Ljava/lang/Object;

    const/4 v8, 0x0

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    aput-object v1, v7, v8

    const/4 v1, 0x1

    invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v5

    aput-object v5, v7, v1

    const/4 v1, 0x2

    aput-object v4, v7, v1

    invoke-virtual {v6, v0, v7}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/Integer;

    invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
    :try_end_69
    .catch Ljava/lang/ClassNotFoundException; {:try_start_2 .. :try_end_69} :catch_70
    .catch Ljava/lang/NoSuchMethodException; {:try_start_2 .. :try_end_69} :catch_94
    .catch Ljava/lang/NoSuchFieldException; {:try_start_2 .. :try_end_69} :catch_90
    .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_2 .. :try_end_69} :catch_96
    .catch Ljava/lang/IllegalAccessException; {:try_start_2 .. :try_end_69} :catch_92
    .catch Ljava/lang/RuntimeException; {:try_start_2 .. :try_end_69} :catch_8e
    .catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_69} :catch_73

    move-result v0

    if-nez v0, :cond_6e

    move v0, v2

    :goto_6d
    return v0

    :cond_6e
    move v0, v3

    goto :goto_6d

    :catch_70
    move-exception v0

    :goto_71
    move v0, v2

    goto :goto_6d

    :catch_73
    move-exception v0

    const-string v1, "JNotificationState"

    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, "getNotificationStateCommon failed, other error:"

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

    invoke-virtual {v0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v3, v0}, 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

    invoke-static {v1, v0}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V

    move v0, v2

    goto :goto_6d

    :catch_8e
    move-exception v0

    goto :goto_71

    :catch_90
    move-exception v0

    goto :goto_71

    :catch_92
    move-exception v0

    goto :goto_71

    :catch_94
    move-exception v0

    goto :goto_71

    :catch_96
    move-exception v0

    goto :goto_71
.end method