GmsRpc.smali
.class public Lcom/google/firebase/iid/GmsRpc;
.super Ljava/lang/Object;
.source ""
# annotations
.annotation build Lcom/google/android/gms/common/annotation/KeepForSdk;
.end annotation
# static fields
.field public static final ERROR_INTERNAL_SERVER_ERROR:Ljava/lang/String; = "INTERNAL_SERVER_ERROR"
.annotation build Lcom/google/android/gms/common/annotation/KeepForSdk;
.end annotation
.end field
.field public static final ERROR_SERVICE_NOT_AVAILABLE:Ljava/lang/String; = "SERVICE_NOT_AVAILABLE"
.annotation build Lcom/google/android/gms/common/annotation/KeepForSdk;
.end annotation
.end field
# instance fields
.field private final app:Lcom/google/firebase/FirebaseApp;
.field private final firebaseInstallations:Lcom/google/firebase/installations/FirebaseInstallationsApi;
.field private final heartbeatInfo:Lcom/google/firebase/inject/Provider;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/firebase/inject/Provider<",
"Lcom/google/firebase/heartbeatinfo/HeartBeatInfo;",
">;"
}
.end annotation
.end field
.field private final metadata:Lcom/google/firebase/iid/Metadata;
.field private final rpc:Lcom/google/android/gms/cloudmessaging/Rpc;
.field private final userAgentPublisher:Lcom/google/firebase/inject/Provider;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/firebase/inject/Provider<",
"Lcom/google/firebase/platforminfo/UserAgentPublisher;",
">;"
}
.end annotation
.end field
# direct methods
.method constructor <init>(Lcom/google/firebase/FirebaseApp;Lcom/google/firebase/iid/Metadata;Lcom/google/android/gms/cloudmessaging/Rpc;Lcom/google/firebase/inject/Provider;Lcom/google/firebase/inject/Provider;Lcom/google/firebase/installations/FirebaseInstallationsApi;)V
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/firebase/FirebaseApp;",
"Lcom/google/firebase/iid/Metadata;",
"Lcom/google/android/gms/cloudmessaging/Rpc;",
"Lcom/google/firebase/inject/Provider<",
"Lcom/google/firebase/platforminfo/UserAgentPublisher;",
">;",
"Lcom/google/firebase/inject/Provider<",
"Lcom/google/firebase/heartbeatinfo/HeartBeatInfo;",
">;",
"Lcom/google/firebase/installations/FirebaseInstallationsApi;",
")V"
}
.end annotation
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->app:Lcom/google/firebase/FirebaseApp;
iput-object p2, p0, Lcom/google/firebase/iid/GmsRpc;->metadata:Lcom/google/firebase/iid/Metadata;
iput-object p3, p0, Lcom/google/firebase/iid/GmsRpc;->rpc:Lcom/google/android/gms/cloudmessaging/Rpc;
iput-object p4, p0, Lcom/google/firebase/iid/GmsRpc;->userAgentPublisher:Lcom/google/firebase/inject/Provider;
iput-object p5, p0, Lcom/google/firebase/iid/GmsRpc;->heartbeatInfo:Lcom/google/firebase/inject/Provider;
iput-object p6, p0, Lcom/google/firebase/iid/GmsRpc;->firebaseInstallations:Lcom/google/firebase/installations/FirebaseInstallationsApi;
return-void
.end method
.method public constructor <init>(Lcom/google/firebase/FirebaseApp;Lcom/google/firebase/iid/Metadata;Lcom/google/firebase/inject/Provider;Lcom/google/firebase/inject/Provider;Lcom/google/firebase/installations/FirebaseInstallationsApi;)V
.registers 13
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/firebase/FirebaseApp;",
"Lcom/google/firebase/iid/Metadata;",
"Lcom/google/firebase/inject/Provider<",
"Lcom/google/firebase/platforminfo/UserAgentPublisher;",
">;",
"Lcom/google/firebase/inject/Provider<",
"Lcom/google/firebase/heartbeatinfo/HeartBeatInfo;",
">;",
"Lcom/google/firebase/installations/FirebaseInstallationsApi;",
")V"
}
.end annotation
new-instance v3, Lcom/google/android/gms/cloudmessaging/Rpc;
invoke-virtual {p1}, Lcom/google/firebase/FirebaseApp;->getApplicationContext()Landroid/content/Context;
move-result-object v0
invoke-direct {v3, v0}, Lcom/google/android/gms/cloudmessaging/Rpc;-><init>(Landroid/content/Context;)V
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v4, p3
move-object v5, p4
move-object v6, p5
invoke-direct/range {v0 .. v6}, Lcom/google/firebase/iid/GmsRpc;-><init>(Lcom/google/firebase/FirebaseApp;Lcom/google/firebase/iid/Metadata;Lcom/google/android/gms/cloudmessaging/Rpc;Lcom/google/firebase/inject/Provider;Lcom/google/firebase/inject/Provider;Lcom/google/firebase/installations/FirebaseInstallationsApi;)V
return-void
.end method
.method private static base64UrlSafe([B)Ljava/lang/String;
.registers 2
const/16 v0, 0xb
invoke-static {p0, v0}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method private extractResponseWhenComplete(Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/android/gms/tasks/Task<",
"Landroid/os/Bundle;",
">;)",
"Lcom/google/android/gms/tasks/Task<",
"Ljava/lang/String;",
">;"
}
.end annotation
invoke-static {}, Lcom/google/firebase/iid/FirebaseIidExecutors;->directExecutor()Ljava/util/concurrent/Executor;
move-result-object v0
new-instance v1, Lcom/google/firebase/iid/GmsRpc$$Lambda$0;
invoke-direct {v1, p0}, Lcom/google/firebase/iid/GmsRpc$$Lambda$0;-><init>(Lcom/google/firebase/iid/GmsRpc;)V
invoke-virtual {p1, v0, v1}, Lcom/google/android/gms/tasks/Task;->continueWith(Ljava/util/concurrent/Executor;Lcom/google/android/gms/tasks/Continuation;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
return-object p1
.end method
.method private getHashedFirebaseAppName()Ljava/lang/String;
.registers 3
iget-object v0, p0, Lcom/google/firebase/iid/GmsRpc;->app:Lcom/google/firebase/FirebaseApp;
invoke-virtual {v0}, Lcom/google/firebase/FirebaseApp;->getName()Ljava/lang/String;
move-result-object v0
const-string v1, "SHA-1"
:try_start_8
invoke-static {v1}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v1
invoke-virtual {v0}, Ljava/lang/String;->getBytes()[B
move-result-object v0
invoke-virtual {v1, v0}, Ljava/security/MessageDigest;->digest([B)[B
move-result-object v0
invoke-static {v0}, Lcom/google/firebase/iid/GmsRpc;->base64UrlSafe([B)Ljava/lang/String;
move-result-object v0
:try_end_18
.catch Ljava/security/NoSuchAlgorithmException; {:try_start_8 .. :try_end_18} :catch_19
return-object v0
:catch_19
const-string v0, "[HASH-ERROR]"
return-object v0
.end method
.method private handleResponse(Landroid/os/Bundle;)Ljava/lang/String;
.registers 5
const-string v0, "SERVICE_NOT_AVAILABLE"
if-eqz p1, :cond_63
const-string v1, "registration_id"
invoke-virtual {p1, v1}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_d
return-object v1
:cond_d
const-string v1, "unregistered"
invoke-virtual {p1, v1}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_16
return-object v1
:cond_16
const-string v1, "error"
invoke-virtual {p1, v1}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
const-string v2, "RST"
invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_5b
if-eqz v1, :cond_2c
new-instance p1, Ljava/io/IOException;
invoke-direct {p1, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw p1
:cond_2c
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/String;->length()I
move-result v1
new-instance v2, Ljava/lang/StringBuilder;
add-int/lit8 v1, v1, 0x15
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "Unexpected response: "
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
new-instance v1, Ljava/lang/Throwable;
invoke-direct {v1}, Ljava/lang/Throwable;-><init>()V
const-string v2, "FirebaseInstanceId"
invoke-static {v2, p1, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
new-instance p1, Ljava/io/IOException;
invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw p1
:cond_5b
new-instance p1, Ljava/io/IOException;
const-string v0, "INSTANCE_ID_RESET"
invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw p1
:cond_63
new-instance p1, Ljava/io/IOException;
invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method static isErrorMessageForRetryableError(Ljava/lang/String;)Z
.registers 2
const-string v0, "SERVICE_NOT_AVAILABLE"
invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_1b
const-string v0, "INTERNAL_SERVER_ERROR"
invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_1b
const-string v0, "InternalServerError"
invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p0
if-eqz p0, :cond_19
goto :goto_1b
:cond_19
const/4 p0, 0x0
return p0
:cond_1b
:goto_1b
const/4 p0, 0x1
return p0
.end method
.method private setDefaultAttributesToBundle(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
.registers 7
const-string v0, "FirebaseInstanceId"
const-string v1, "scope"
invoke-virtual {p4, v1, p3}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
const-string p3, "sender"
invoke-virtual {p4, p3, p2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
const-string p3, "subtype"
invoke-virtual {p4, p3, p2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
const-string p2, "appid"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
iget-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->app:Lcom/google/firebase/FirebaseApp;
invoke-virtual {p1}, Lcom/google/firebase/FirebaseApp;->getOptions()Lcom/google/firebase/FirebaseOptions;
move-result-object p1
invoke-virtual {p1}, Lcom/google/firebase/FirebaseOptions;->getApplicationId()Ljava/lang/String;
move-result-object p1
const-string p2, "gmp_app_id"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
iget-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->metadata:Lcom/google/firebase/iid/Metadata;
invoke-virtual {p1}, Lcom/google/firebase/iid/Metadata;->getGmsVersionCode()I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
move-result-object p1
const-string p2, "gmsv"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
sget p1, Landroid/os/Build$VERSION;->SDK_INT:I
invoke-static {p1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
move-result-object p1
const-string p2, "osv"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
iget-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->metadata:Lcom/google/firebase/iid/Metadata;
invoke-virtual {p1}, Lcom/google/firebase/iid/Metadata;->getAppVersionCode()Ljava/lang/String;
move-result-object p1
const-string p2, "app_ver"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
iget-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->metadata:Lcom/google/firebase/iid/Metadata;
invoke-virtual {p1}, Lcom/google/firebase/iid/Metadata;->getAppVersionName()Ljava/lang/String;
move-result-object p1
const-string p2, "app_ver_name"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
invoke-direct {p0}, Lcom/google/firebase/iid/GmsRpc;->getHashedFirebaseAppName()Ljava/lang/String;
move-result-object p1
const-string p2, "firebase-app-name-hash"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
:try_start_5e
iget-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->firebaseInstallations:Lcom/google/firebase/installations/FirebaseInstallationsApi;
const/4 p2, 0x0
invoke-interface {p1, p2}, Lcom/google/firebase/installations/FirebaseInstallationsApi;->getToken(Z)Lcom/google/android/gms/tasks/Task;
move-result-object p1
invoke-static {p1}, Lcom/google/android/gms/tasks/Tasks;->await(Lcom/google/android/gms/tasks/Task;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/google/firebase/installations/InstallationTokenResult;
invoke-virtual {p1}, Lcom/google/firebase/installations/InstallationTokenResult;->getToken()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result p2
if-nez p2, :cond_7b
const-string p2, "Goog-Firebase-Installations-Auth"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_89
:cond_7b
const-string p1, "FIS auth token is empty"
invoke-static {v0, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:try_end_80
.catch Ljava/util/concurrent/ExecutionException; {:try_start_5e .. :try_end_80} :catch_83
.catch Ljava/lang/InterruptedException; {:try_start_5e .. :try_end_80} :catch_81
goto :goto_89
:catch_81
move-exception p1
goto :goto_84
:catch_83
move-exception p1
:goto_84
const-string p2, "Failed to get FIS auth token"
invoke-static {v0, p2, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:goto_89
const-string p1, "cliv"
const-string p2, "fiid-21.0.1"
invoke-virtual {p4, p1, p2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
iget-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->heartbeatInfo:Lcom/google/firebase/inject/Provider;
invoke-interface {p1}, Lcom/google/firebase/inject/Provider;->get()Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/google/firebase/heartbeatinfo/HeartBeatInfo;
iget-object p2, p0, Lcom/google/firebase/iid/GmsRpc;->userAgentPublisher:Lcom/google/firebase/inject/Provider;
invoke-interface {p2}, Lcom/google/firebase/inject/Provider;->get()Ljava/lang/Object;
move-result-object p2
check-cast p2, Lcom/google/firebase/platforminfo/UserAgentPublisher;
if-eqz p1, :cond_c4
if-eqz p2, :cond_c4
const-string p3, "fire-iid"
invoke-interface {p1, p3}, Lcom/google/firebase/heartbeatinfo/HeartBeatInfo;->getHeartBeatCode(Ljava/lang/String;)Lcom/google/firebase/heartbeatinfo/HeartBeatInfo$HeartBeat;
move-result-object p1
sget-object p3, Lcom/google/firebase/heartbeatinfo/HeartBeatInfo$HeartBeat;->NONE:Lcom/google/firebase/heartbeatinfo/HeartBeatInfo$HeartBeat;
if-eq p1, p3, :cond_c4
invoke-virtual {p1}, Lcom/google/firebase/heartbeatinfo/HeartBeatInfo$HeartBeat;->getCode()I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
move-result-object p1
const-string p3, "Firebase-Client-Log-Type"
invoke-virtual {p4, p3, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
invoke-interface {p2}, Lcom/google/firebase/platforminfo/UserAgentPublisher;->getUserAgent()Ljava/lang/String;
move-result-object p1
const-string p2, "Firebase-Client"
invoke-virtual {p4, p2, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
:cond_c4
return-object p4
.end method
.method private startRpc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Lcom/google/android/gms/tasks/Task;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Landroid/os/Bundle;",
")",
"Lcom/google/android/gms/tasks/Task<",
"Landroid/os/Bundle;",
">;"
}
.end annotation
invoke-direct {p0, p1, p2, p3, p4}, Lcom/google/firebase/iid/GmsRpc;->setDefaultAttributesToBundle(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
iget-object p1, p0, Lcom/google/firebase/iid/GmsRpc;->rpc:Lcom/google/android/gms/cloudmessaging/Rpc;
invoke-virtual {p1, p4}, Lcom/google/android/gms/cloudmessaging/Rpc;->send(Landroid/os/Bundle;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
return-object p1
.end method
# virtual methods
.method public deleteInstanceId(Ljava/lang/String;)Lcom/google/android/gms/tasks/Task;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")",
"Lcom/google/android/gms/tasks/Task<",
"*>;"
}
.end annotation
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
const-string v1, "iid-operation"
const-string v2, "delete"
invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
const-string v1, "1"
invoke-virtual {v0, v2, v1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
const-string v1, "*"
invoke-direct {p0, p1, v1, v1, v0}, Lcom/google/firebase/iid/GmsRpc;->startRpc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
invoke-direct {p0, p1}, Lcom/google/firebase/iid/GmsRpc;->extractResponseWhenComplete(Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
return-object p1
.end method
.method public deleteToken(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/google/android/gms/tasks/Task;
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/lang/String;",
")",
"Lcom/google/android/gms/tasks/Task<",
"*>;"
}
.end annotation
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
const-string v1, "delete"
const-string v2, "1"
invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
invoke-direct {p0, p1, p2, p3, v0}, Lcom/google/firebase/iid/GmsRpc;->startRpc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
invoke-direct {p0, p1}, Lcom/google/firebase/iid/GmsRpc;->extractResponseWhenComplete(Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
return-object p1
.end method
.method public getToken(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/google/android/gms/tasks/Task;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/lang/String;",
")",
"Lcom/google/android/gms/tasks/Task<",
"Ljava/lang/String;",
">;"
}
.end annotation
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
invoke-direct {p0, p1, p2, p3, v0}, Lcom/google/firebase/iid/GmsRpc;->startRpc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
invoke-direct {p0, p1}, Lcom/google/firebase/iid/GmsRpc;->extractResponseWhenComplete(Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
return-object p1
.end method
.method final synthetic lambda$extractResponseWhenComplete$0$GmsRpc(Lcom/google/android/gms/tasks/Task;)Ljava/lang/String;
.registers 3
const-class v0, Ljava/io/IOException;
invoke-virtual {p1, v0}, Lcom/google/android/gms/tasks/Task;->getResult(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/os/Bundle;
invoke-direct {p0, p1}, Lcom/google/firebase/iid/GmsRpc;->handleResponse(Landroid/os/Bundle;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public subscribeToTopic(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/google/android/gms/tasks/Task;
.registers 8
.annotation build Lcom/google/android/gms/common/annotation/KeepForSdk;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/lang/String;",
")",
"Lcom/google/android/gms/tasks/Task<",
"*>;"
}
.end annotation
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
invoke-static {p3}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/String;->length()I
move-result v2
const-string v3, "/topics/"
if-eqz v2, :cond_16
invoke-virtual {v3, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
goto :goto_1b
:cond_16
new-instance v1, Ljava/lang/String;
invoke-direct {v1, v3}, Ljava/lang/String;-><init>(Ljava/lang/String;)V
:goto_1b
const-string v2, "gcm.topic"
invoke-virtual {v0, v2, v1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
invoke-static {p3}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/String;->length()I
move-result v1
if-eqz v1, :cond_2f
invoke-virtual {v3, p3}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p3
goto :goto_34
:cond_2f
new-instance p3, Ljava/lang/String;
invoke-direct {p3, v3}, Ljava/lang/String;-><init>(Ljava/lang/String;)V
:goto_34
invoke-direct {p0, p1, p2, p3, v0}, Lcom/google/firebase/iid/GmsRpc;->startRpc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
invoke-direct {p0, p1}, Lcom/google/firebase/iid/GmsRpc;->extractResponseWhenComplete(Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
return-object p1
.end method
.method public unsubscribeFromTopic(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/google/android/gms/tasks/Task;
.registers 8
.annotation build Lcom/google/android/gms/common/annotation/KeepForSdk;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/lang/String;",
")",
"Lcom/google/android/gms/tasks/Task<",
"*>;"
}
.end annotation
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
invoke-static {p3}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/String;->length()I
move-result v2
const-string v3, "/topics/"
if-eqz v2, :cond_16
invoke-virtual {v3, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
goto :goto_1b
:cond_16
new-instance v1, Ljava/lang/String;
invoke-direct {v1, v3}, Ljava/lang/String;-><init>(Ljava/lang/String;)V
:goto_1b
const-string v2, "gcm.topic"
invoke-virtual {v0, v2, v1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
const-string v1, "delete"
const-string v2, "1"
invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
invoke-static {p3}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/String;->length()I
move-result v1
if-eqz v1, :cond_36
invoke-virtual {v3, p3}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p3
goto :goto_3b
:cond_36
new-instance p3, Ljava/lang/String;
invoke-direct {p3, v3}, Ljava/lang/String;-><init>(Ljava/lang/String;)V
:goto_3b
invoke-direct {p0, p1, p2, p3, v0}, Lcom/google/firebase/iid/GmsRpc;->startRpc(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/os/Bundle;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
invoke-direct {p0, p1}, Lcom/google/firebase/iid/GmsRpc;->extractResponseWhenComplete(Lcom/google/android/gms/tasks/Task;)Lcom/google/android/gms/tasks/Task;
move-result-object p1
return-object p1
.end method