GCMPush.smali
.class public Lio/rong/push/platform/google/GCMPush;
.super Ljava/lang/Object;
.source "GCMPush.java"
# interfaces
.implements Lio/rong/push/platform/IPush;
# instance fields
.field private final TAG:Ljava/lang/String;
# direct methods
.method public constructor <init>()V
.registers 2
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
const-class v0, Lio/rong/push/platform/google/GCMPush;
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lio/rong/push/platform/google/GCMPush;->TAG:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public register(Landroid/content/Context;Lio/rong/push/pushconfig/PushConfig;)V
.registers 10
.line 1
invoke-static {p1}, Lio/rong/push/core/PushUtils;->checkPlayServices(Landroid/content/Context;)J
move-result-wide v4
const-wide/16 v0, 0x0
cmp-long p2, v4, v0
if-eqz p2, :cond_17
.line 2
invoke-static {}, Lio/rong/push/PushManager;->getInstance()Lio/rong/push/PushManager;
move-result-object v0
sget-object v2, Lio/rong/push/PushType;->GOOGLE_GCM:Lio/rong/push/PushType;
const-string v3, "checkPlayServices"
move-object v1, p1
invoke-virtual/range {v0 .. v5}, Lio/rong/push/PushManager;->onErrorResponse(Landroid/content/Context;Lio/rong/push/PushType;Ljava/lang/String;J)V
goto :goto_61
.line 3
:cond_17
invoke-static {p1}, Lcom/google/android/gms/iid/InstanceID;->getInstance(Landroid/content/Context;)Lcom/google/android/gms/iid/InstanceID;
move-result-object p2
.line 4
:try_start_1b
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
const-string v2, "gcm_defaultSenderId"
const-string v3, "string"
invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v1, v2, v3, v4}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
move-result v1
invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
move-result-object v0
const-string v1, "GCM"
const/4 v2, 0x0
invoke-virtual {p2, v0, v1, v2}, Lcom/google/android/gms/iid/InstanceID;->getToken(Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Ljava/lang/String;
move-result-object p2
.line 5
invoke-static {}, Lio/rong/push/PushManager;->getInstance()Lio/rong/push/PushManager;
move-result-object v0
sget-object v1, Lio/rong/push/PushType;->GOOGLE_GCM:Lio/rong/push/PushType;
invoke-virtual {v0, p1, v1, p2}, Lio/rong/push/PushManager;->onReceiveToken(Landroid/content/Context;Lio/rong/push/PushType;Ljava/lang/String;)V
:try_end_43
.catch Ljava/io/IOException; {:try_start_1b .. :try_end_43} :catch_44
goto :goto_61
:catch_44
move-exception p2
.line 6
iget-object v0, p0, Lio/rong/push/platform/google/GCMPush;->TAG:Ljava/lang/String;
invoke-virtual {p2}, Ljava/io/IOException;->getMessage()Ljava/lang/String;
move-result-object p2
invoke-static {v0, p2}, Lio/rong/push/common/RLog;->e(Ljava/lang/String;Ljava/lang/String;)V
.line 7
invoke-static {}, Lio/rong/push/PushManager;->getInstance()Lio/rong/push/PushManager;
move-result-object v1
sget-object v3, Lio/rong/push/PushType;->GOOGLE_GCM:Lio/rong/push/PushType;
sget-object p2, Lio/rong/push/PushErrorCode;->IO_EXCEPTION:Lio/rong/push/PushErrorCode;
invoke-virtual {p2}, Lio/rong/push/PushErrorCode;->getCode()I
move-result p2
int-to-long v5, p2
const-string v4, "checkPlayServices"
move-object v2, p1
invoke-virtual/range {v1 .. v6}, Lio/rong/push/PushManager;->onErrorResponse(Landroid/content/Context;Lio/rong/push/PushType;Ljava/lang/String;J)V
:goto_61
return-void
.end method