PushMessageHandler.smali
.class public Lcom/xiaomi/mipush/sdk/PushMessageHandler;
.super Lcom/xiaomi/mipush/sdk/BaseService;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/xiaomi/mipush/sdk/PushMessageHandler$a;
}
.end annotation
# static fields
.field private static a:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List",
"<",
"Lcom/xiaomi/mipush/sdk/e$a;",
">;"
}
.end annotation
.end field
.field private static b:Ljava/util/concurrent/ThreadPoolExecutor;
# direct methods
.method static constructor <clinit>()V
.registers 8
const/4 v2, 0x1
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
sput-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
new-instance v1, Ljava/util/concurrent/ThreadPoolExecutor;
const-wide/16 v4, 0xf
sget-object v6, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;
new-instance v7, Ljava/util/concurrent/LinkedBlockingQueue;
invoke-direct {v7}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V
move v3, v2
invoke-direct/range {v1 .. v7}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
sput-object v1, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->b:Ljava/util/concurrent/ThreadPoolExecutor;
return-void
.end method
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Lcom/xiaomi/mipush/sdk/BaseService;-><init>()V
return-void
.end method
.method public static a(JLjava/lang/String;Ljava/lang/String;)V
.registers 8
sget-object v1, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_9
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_1c
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/xiaomi/mipush/sdk/e$a;
invoke-virtual {v0, p0, p1, p2, p3}, Lcom/xiaomi/mipush/sdk/e$a;->a(JLjava/lang/String;Ljava/lang/String;)V
goto :goto_9
:catchall_19
move-exception v0
monitor-exit v1
:try_end_1b
.catchall {:try_start_3 .. :try_end_1b} :catchall_19
throw v0
:cond_1c
:try_start_1c
monitor-exit v1
:try_end_1d
.catchall {:try_start_1c .. :try_end_1d} :catchall_19
return-void
.end method
.method public static a(Landroid/content/Context;)V
.registers 4
new-instance v0, Landroid/content/Intent;
invoke-direct {v0}, Landroid/content/Intent;-><init>()V
new-instance v1, Landroid/content/ComponentName;
const-class v2, Lcom/xiaomi/mipush/sdk/PushMessageHandler;
invoke-direct {v1, p0, v2}, Landroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
invoke-virtual {v0, v1}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
:try_start_f
invoke-virtual {p0, v0}, Landroid/content/Context;->startService(Landroid/content/Intent;)Landroid/content/ComponentName;
:try_end_12
.catch Ljava/lang/Exception; {:try_start_f .. :try_end_12} :catch_13
:goto_12
return-void
:catch_13
move-exception v0
invoke-virtual {v0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/String;)V
goto :goto_12
.end method
.method public static a(Landroid/content/Context;Landroid/content/Intent;)V
.registers 4
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "addjob PushMessageHandler "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->c(Ljava/lang/String;)V
if-eqz p1, :cond_1e
invoke-static {p0, p1}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->c(Landroid/content/Context;Landroid/content/Intent;)V
invoke-static {p0}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Landroid/content/Context;)V
:cond_1e
return-void
.end method
.method private static a(Landroid/content/Context;Landroid/content/Intent;Landroid/content/pm/ResolveInfo;)V
.registers 6
:try_start_0
iget-object v0, p2, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
iget-object v0, v0, Landroid/content/pm/ActivityInfo;->name:Ljava/lang/String;
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/xiaomi/mipush/sdk/PushMessageReceiver;
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v1
new-instance v2, Lcom/xiaomi/mipush/sdk/MessageHandleService$a;
invoke-direct {v2, p1, v0}, Lcom/xiaomi/mipush/sdk/MessageHandleService$a;-><init>(Landroid/content/Intent;Lcom/xiaomi/mipush/sdk/PushMessageReceiver;)V
invoke-static {v1, v2}, Lcom/xiaomi/mipush/sdk/MessageHandleService;->a(Landroid/content/Context;Lcom/xiaomi/mipush/sdk/MessageHandleService$a;)V
new-instance v0, Landroid/content/Intent;
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v1
const-class v2, Lcom/xiaomi/mipush/sdk/MessageHandleService;
invoke-direct {v0, v1, v2}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
invoke-static {p0, v0}, Lcom/xiaomi/mipush/sdk/MessageHandleService;->a(Landroid/content/Context;Landroid/content/Intent;)V
:try_end_28
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_28} :catch_29
:goto_28
return-void
:catch_29
move-exception v0
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/Throwable;)V
goto :goto_28
.end method
.method public static a(Landroid/content/Context;Lcom/xiaomi/mipush/sdk/MiPushMessage;)V
.registers 9
sget-object v1, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_9
:goto_9
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_3d
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/xiaomi/mipush/sdk/e$a;
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushMessage;->getCategory()Ljava/lang/String;
move-result-object v3
invoke-virtual {v0}, Lcom/xiaomi/mipush/sdk/e$a;->a()Ljava/lang/String;
move-result-object v4
invoke-static {v3, v4}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Ljava/lang/String;Ljava/lang/String;)Z
move-result v3
if-eqz v3, :cond_9
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushMessage;->getContent()Ljava/lang/String;
move-result-object v3
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushMessage;->getAlias()Ljava/lang/String;
move-result-object v4
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushMessage;->getTopic()Ljava/lang/String;
move-result-object v5
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushMessage;->isNotified()Z
move-result v6
invoke-virtual {v0, v3, v4, v5, v6}, Lcom/xiaomi/mipush/sdk/e$a;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
invoke-virtual {v0, p1}, Lcom/xiaomi/mipush/sdk/e$a;->a(Lcom/xiaomi/mipush/sdk/MiPushMessage;)V
goto :goto_9
:catchall_3a
move-exception v0
monitor-exit v1
:try_end_3c
.catchall {:try_start_3 .. :try_end_3c} :catchall_3a
throw v0
:cond_3d
:try_start_3d
monitor-exit v1
:try_end_3e
.catchall {:try_start_3d .. :try_end_3e} :catchall_3a
return-void
.end method
.method public static a(Landroid/content/Context;Lcom/xiaomi/mipush/sdk/PushMessageHandler$a;)V
.registers 10
const/4 v0, 0x0
const/4 v4, 0x0
instance-of v1, p1, Lcom/xiaomi/mipush/sdk/MiPushMessage;
if-eqz v1, :cond_c
check-cast p1, Lcom/xiaomi/mipush/sdk/MiPushMessage;
invoke-static {p0, p1}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Landroid/content/Context;Lcom/xiaomi/mipush/sdk/MiPushMessage;)V
:cond_b
:goto_b
return-void
:cond_c
instance-of v1, p1, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;
if-eqz v1, :cond_b
check-cast p1, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCommand()Ljava/lang/String;
move-result-object v3
sget-object v1, Lcom/xiaomi/push/ge;->a:Lcom/xiaomi/push/ge;
iget-object v1, v1, Lcom/xiaomi/push/ge;->a:Ljava/lang/String;
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_3e
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCommandArguments()Ljava/util/List;
move-result-object v1
if-eqz v1, :cond_32
invoke-interface {v1}, Ljava/util/List;->isEmpty()Z
move-result v2
if-nez v2, :cond_32
invoke-interface {v1, v4}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
:cond_32
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getResultCode()J
move-result-wide v2
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getReason()Ljava/lang/String;
move-result-object v1
invoke-static {v2, v3, v1, v0}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(JLjava/lang/String;Ljava/lang/String;)V
goto :goto_b
:cond_3e
sget-object v1, Lcom/xiaomi/push/ge;->c:Lcom/xiaomi/push/ge;
iget-object v1, v1, Lcom/xiaomi/push/ge;->a:Ljava/lang/String;
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_5c
sget-object v1, Lcom/xiaomi/push/ge;->d:Lcom/xiaomi/push/ge;
iget-object v1, v1, Lcom/xiaomi/push/ge;->a:Ljava/lang/String;
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_5c
sget-object v1, Lcom/xiaomi/push/ge;->i:Lcom/xiaomi/push/ge;
iget-object v1, v1, Lcom/xiaomi/push/ge;->a:Ljava/lang/String;
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_71
:cond_5c
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCategory()Ljava/lang/String;
move-result-object v2
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getResultCode()J
move-result-wide v4
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getReason()Ljava/lang/String;
move-result-object v6
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCommandArguments()Ljava/util/List;
move-result-object v7
move-object v1, p0
invoke-static/range {v1 .. v7}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;Ljava/util/List;)V
goto :goto_b
:cond_71
sget-object v1, Lcom/xiaomi/push/ge;->g:Lcom/xiaomi/push/ge;
iget-object v1, v1, Lcom/xiaomi/push/ge;->a:Ljava/lang/String;
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_a2
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCommandArguments()Ljava/util/List;
move-result-object v1
if-eqz v1, :cond_a0
invoke-interface {v1}, Ljava/util/List;->isEmpty()Z
move-result v2
if-nez v2, :cond_a0
invoke-interface {v1, v4}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
move-object v5, v0
:goto_8e
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCategory()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getResultCode()J
move-result-wide v2
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getReason()Ljava/lang/String;
move-result-object v4
move-object v0, p0
invoke-static/range {v0 .. v5}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Landroid/content/Context;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;)V
goto/16 :goto_b
:cond_a0
move-object v5, v0
goto :goto_8e
:cond_a2
sget-object v1, Lcom/xiaomi/push/ge;->h:Lcom/xiaomi/push/ge;
iget-object v1, v1, Lcom/xiaomi/push/ge;->a:Ljava/lang/String;
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_b
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCommandArguments()Ljava/util/List;
move-result-object v1
if-eqz v1, :cond_d1
invoke-interface {v1}, Ljava/util/List;->isEmpty()Z
move-result v2
if-nez v2, :cond_d1
invoke-interface {v1, v4}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
move-object v5, v0
:goto_bf
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getCategory()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getResultCode()J
move-result-wide v2
invoke-virtual {p1}, Lcom/xiaomi/mipush/sdk/MiPushCommandMessage;->getReason()Ljava/lang/String;
move-result-object v4
move-object v0, p0
invoke-static/range {v0 .. v5}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->b(Landroid/content/Context;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;)V
goto/16 :goto_b
:cond_d1
move-object v5, v0
goto :goto_bf
.end method
.method protected static a(Landroid/content/Context;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;)V
.registers 10
sget-object v1, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_9
:goto_9
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_26
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/xiaomi/mipush/sdk/e$a;
invoke-virtual {v0}, Lcom/xiaomi/mipush/sdk/e$a;->a()Ljava/lang/String;
move-result-object v3
invoke-static {p1, v3}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Ljava/lang/String;Ljava/lang/String;)Z
move-result v3
if-eqz v3, :cond_9
invoke-virtual {v0, p2, p3, p4, p5}, Lcom/xiaomi/mipush/sdk/e$a;->b(JLjava/lang/String;Ljava/lang/String;)V
goto :goto_9
:catchall_23
move-exception v0
monitor-exit v1
:try_end_25
.catchall {:try_start_3 .. :try_end_25} :catchall_23
throw v0
:cond_26
:try_start_26
monitor-exit v1
:try_end_27
.catchall {:try_start_26 .. :try_end_27} :catchall_23
return-void
.end method
.method protected static a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;Ljava/util/List;)V
.registers 16
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/lang/String;",
"Ljava/lang/String;",
"J",
"Ljava/lang/String;",
"Ljava/util/List",
"<",
"Ljava/lang/String;",
">;)V"
}
.end annotation
sget-object v6, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
monitor-enter v6
:try_start_3
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v7
:cond_9
:goto_9
invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2a
invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/xiaomi/mipush/sdk/e$a;
invoke-virtual {v0}, Lcom/xiaomi/mipush/sdk/e$a;->a()Ljava/lang/String;
move-result-object v1
invoke-static {p1, v1}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Ljava/lang/String;Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_9
move-object v1, p2
move-wide v2, p3
move-object v4, p5
move-object v5, p6
invoke-virtual/range {v0 .. v5}, Lcom/xiaomi/mipush/sdk/e$a;->a(Ljava/lang/String;JLjava/lang/String;Ljava/util/List;)V
goto :goto_9
:catchall_27
move-exception v0
monitor-exit v6
:try_end_29
.catchall {:try_start_3 .. :try_end_29} :catchall_27
throw v0
:cond_2a
:try_start_2a
monitor-exit v6
:try_end_2b
.catchall {:try_start_2a .. :try_end_2b} :catchall_27
return-void
.end method
.method protected static a(Lcom/xiaomi/mipush/sdk/e$a;)V
.registers 3
sget-object v1, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0, p0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_10
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0, p0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_10
monitor-exit v1
return-void
:catchall_12
move-exception v0
monitor-exit v1
:try_end_14
.catchall {:try_start_3 .. :try_end_14} :catchall_12
throw v0
.end method
.method protected static a(Ljava/lang/String;Ljava/lang/String;)Z
.registers 3
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_c
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_12
:cond_c
invoke-static {p0, p1}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_14
:cond_12
const/4 v0, 0x1
:goto_13
return v0
:cond_14
const/4 v0, 0x0
goto :goto_13
.end method
.method protected static b()V
.registers 2
sget-object v1, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->clear()V
monitor-exit v1
return-void
:catchall_a
move-exception v0
monitor-exit v1
:try_end_c
.catchall {:try_start_3 .. :try_end_c} :catchall_a
throw v0
.end method
.method protected static b(Landroid/content/Context;Landroid/content/Intent;)V
.registers 8
const/4 v1, 0x0
:try_start_1
const-string v0, "com.xiaomi.mipush.sdk.WAKEUP"
invoke-virtual {p1}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_12
const/4 v0, 0x0
invoke-static {p0, p1, v0}, Lcom/xiaomi/mipush/sdk/be;->a(Landroid/content/Context;Landroid/content/Intent;Landroid/net/Uri;)V
:cond_11
:goto_11
return-void
:cond_12
const-string v0, "com.xiaomi.mipush.SEND_TINYDATA"
invoke-virtual {p1}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_5a
new-instance v0, Lcom/xiaomi/push/io;
invoke-direct {v0}, Lcom/xiaomi/push/io;-><init>()V
const-string v1, "mipush_payload"
invoke-virtual {p1, v1}, Landroid/content/Intent;->getByteArrayExtra(Ljava/lang/String;)[B
move-result-object v1
invoke-static {v0, v1}, Lcom/xiaomi/push/hv;->a(Lcom/xiaomi/push/jv;[B)V
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "PushMessageHandler.onHandleIntent "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v0}, Lcom/xiaomi/push/io;->d()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/xiaomi/a/a/a/c;->c(Ljava/lang/String;)V
invoke-static {p0, v0}, Lcom/xiaomi/mipush/sdk/h;->a(Landroid/content/Context;Lcom/xiaomi/push/io;)Z
:try_end_49
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_49} :catch_4a
goto :goto_11
:catch_4a
move-exception v0
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/Throwable;)V
invoke-static {p0}, Lcom/xiaomi/push/fh;->a(Landroid/content/Context;)Lcom/xiaomi/push/fh;
move-result-object v1
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2, p1, v0}, Lcom/xiaomi/push/fh;->a(Ljava/lang/String;Landroid/content/Intent;Ljava/lang/Throwable;)V
goto :goto_11
:cond_5a
const/4 v0, 0x1
:try_start_5b
invoke-static {p0}, Lcom/xiaomi/mipush/sdk/j;->a(Landroid/content/Context;)I
move-result v2
if-ne v0, v2, :cond_7b
invoke-static {}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->c()Z
move-result v0
if-eqz v0, :cond_6d
const-string v0, "receive a message before application calling initialize"
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->d(Ljava/lang/String;)V
goto :goto_11
:cond_6d
invoke-static {p0}, Lcom/xiaomi/mipush/sdk/af;->a(Landroid/content/Context;)Lcom/xiaomi/mipush/sdk/af;
move-result-object v0
invoke-virtual {v0, p1}, Lcom/xiaomi/mipush/sdk/af;->a(Landroid/content/Intent;)Lcom/xiaomi/mipush/sdk/PushMessageHandler$a;
move-result-object v0
if-eqz v0, :cond_11
invoke-static {p0, v0}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Landroid/content/Context;Lcom/xiaomi/mipush/sdk/PushMessageHandler$a;)V
goto :goto_11
:cond_7b
const-string v0, "com.xiaomi.mipush.sdk.SYNC_LOG"
invoke-virtual {p1}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_8c
const/4 v0, 0x0
invoke-static {p0, v0}, Lcom/xiaomi/mipush/sdk/d;->a(Landroid/content/Context;Z)V
goto :goto_11
:cond_8c
new-instance v2, Landroid/content/Intent;
const-string v0, "com.xiaomi.mipush.RECEIVE_MESSAGE"
invoke-direct {v2, v0}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
invoke-virtual {v2, p1}, Landroid/content/Intent;->putExtras(Landroid/content/Intent;)Landroid/content/Intent;
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
:try_end_a0
.catch Ljava/lang/Throwable; {:try_start_5b .. :try_end_a0} :catch_4a
move-result-object v0
const/16 v3, 0x20
:try_start_a3
invoke-virtual {v0, v2, v3}, Landroid/content/pm/PackageManager;->queryBroadcastReceivers(Landroid/content/Intent;I)Ljava/util/List;
move-result-object v0
if-eqz v0, :cond_107
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_ad
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_107
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/content/pm/ResolveInfo;
iget-object v4, v0, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
if-eqz v4, :cond_ad
iget-object v4, v0, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
iget-object v4, v4, Landroid/content/pm/ActivityInfo;->packageName:Ljava/lang/String;
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_ad
const-class v4, Lcom/xiaomi/mipush/sdk/PushMessageReceiver;
iget-object v5, v0, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
iget-object v5, v5, Landroid/content/pm/ActivityInfo;->name:Ljava/lang/String;
invoke-static {v5}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v4
if-eqz v4, :cond_ad
:goto_db
if-eqz v0, :cond_f3
invoke-static {p0, v2, v0}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Landroid/content/Context;Landroid/content/Intent;Landroid/content/pm/ResolveInfo;)V
:try_end_e0
.catch Ljava/lang/Exception; {:try_start_a3 .. :try_end_e0} :catch_e2
.catch Ljava/lang/Throwable; {:try_start_a3 .. :try_end_e0} :catch_4a
goto/16 :goto_11
:catch_e2
move-exception v0
:try_start_e3
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->a(Ljava/lang/Throwable;)V
invoke-static {p0}, Lcom/xiaomi/push/fh;->a(Landroid/content/Context;)Lcom/xiaomi/push/fh;
move-result-object v1
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2, p1, v0}, Lcom/xiaomi/push/fh;->a(Ljava/lang/String;Landroid/content/Intent;Ljava/lang/Throwable;)V
:try_end_f1
.catch Ljava/lang/Throwable; {:try_start_e3 .. :try_end_f1} :catch_4a
goto/16 :goto_11
:cond_f3
:try_start_f3
const-string v0, "cannot find the receiver to handler this message, check your manifest"
invoke-static {v0}, Lcom/xiaomi/a/a/a/c;->d(Ljava/lang/String;)V
invoke-static {p0}, Lcom/xiaomi/push/fh;->a(Landroid/content/Context;)Lcom/xiaomi/push/fh;
move-result-object v0
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v1
const-string v2, "cannot find the receiver to handler this message, check your manifest"
invoke-virtual {v0, v1, p1, v2}, Lcom/xiaomi/push/fh;->a(Ljava/lang/String;Landroid/content/Intent;Ljava/lang/String;)V
:try_end_105
.catch Ljava/lang/Exception; {:try_start_f3 .. :try_end_105} :catch_e2
.catch Ljava/lang/Throwable; {:try_start_f3 .. :try_end_105} :catch_4a
goto/16 :goto_11
:cond_107
move-object v0, v1
goto :goto_db
.end method
.method protected static b(Landroid/content/Context;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;)V
.registers 10
sget-object v1, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_9
:goto_9
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_26
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/xiaomi/mipush/sdk/e$a;
invoke-virtual {v0}, Lcom/xiaomi/mipush/sdk/e$a;->a()Ljava/lang/String;
move-result-object v3
invoke-static {p1, v3}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a(Ljava/lang/String;Ljava/lang/String;)Z
move-result v3
if-eqz v3, :cond_9
invoke-virtual {v0, p2, p3, p4, p5}, Lcom/xiaomi/mipush/sdk/e$a;->c(JLjava/lang/String;Ljava/lang/String;)V
goto :goto_9
:catchall_23
move-exception v0
monitor-exit v1
:try_end_25
.catchall {:try_start_3 .. :try_end_25} :catchall_23
throw v0
:cond_26
:try_start_26
monitor-exit v1
:try_end_27
.catchall {:try_start_26 .. :try_end_27} :catchall_23
return-void
.end method
.method private static c(Landroid/content/Context;Landroid/content/Intent;)V
.registers 4
if-eqz p1, :cond_14
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->b:Ljava/util/concurrent/ThreadPoolExecutor;
invoke-virtual {v0}, Ljava/util/concurrent/ThreadPoolExecutor;->isShutdown()Z
move-result v0
if-nez v0, :cond_14
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->b:Ljava/util/concurrent/ThreadPoolExecutor;
new-instance v1, Lcom/xiaomi/mipush/sdk/ae;
invoke-direct {v1, p0, p1}, Lcom/xiaomi/mipush/sdk/ae;-><init>(Landroid/content/Context;Landroid/content/Intent;)V
invoke-virtual {v0, v1}, Ljava/util/concurrent/ThreadPoolExecutor;->execute(Ljava/lang/Runnable;)V
:cond_14
return-void
.end method
.method public static c()Z
.registers 1
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->a:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v0
return v0
.end method
# virtual methods
.method protected a()Z
.registers 2
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->b:Ljava/util/concurrent/ThreadPoolExecutor;
if-eqz v0, :cond_1a
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->b:Ljava/util/concurrent/ThreadPoolExecutor;
invoke-virtual {v0}, Ljava/util/concurrent/ThreadPoolExecutor;->getQueue()Ljava/util/concurrent/BlockingQueue;
move-result-object v0
if-eqz v0, :cond_1a
sget-object v0, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->b:Ljava/util/concurrent/ThreadPoolExecutor;
invoke-virtual {v0}, Ljava/util/concurrent/ThreadPoolExecutor;->getQueue()Ljava/util/concurrent/BlockingQueue;
move-result-object v0
invoke-interface {v0}, Ljava/util/concurrent/BlockingQueue;->size()I
move-result v0
if-lez v0, :cond_1a
const/4 v0, 0x1
:goto_19
return v0
:cond_1a
const/4 v0, 0x0
goto :goto_19
.end method
.method public onBind(Landroid/content/Intent;)Landroid/os/IBinder;
.registers 3
const/4 v0, 0x0
return-object v0
.end method
.method public onStart(Landroid/content/Intent;I)V
.registers 4
invoke-super {p0, p1, p2}, Lcom/xiaomi/mipush/sdk/BaseService;->onStart(Landroid/content/Intent;I)V
invoke-virtual {p0}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->getApplicationContext()Landroid/content/Context;
move-result-object v0
invoke-static {v0, p1}, Lcom/xiaomi/mipush/sdk/PushMessageHandler;->c(Landroid/content/Context;Landroid/content/Intent;)V
return-void
.end method