V2TXLiveUtils.smali
.class public Lcom/tencent/live2/impl/V2TXLiveUtils;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/tencent/live2/impl/V2TXLiveUtils$a;
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String; = "V2TXLiveUtils"
.field public static final TRTC_ADDRESS1:Ljava/lang/String; = "room://cloud.tencent.com/rtc"
.field public static final TRTC_ADDRESS2:Ljava/lang/String; = "room://rtc.tencent.com"
# direct methods
.method public constructor <init>()V
.registers 1
.line 9
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static getBitrateByResolution(Lcom/tencent/live2/V2TXLiveDef$V2TXLiveVideoResolution;)Lcom/tencent/live2/impl/V2TXLiveUtils$a;
.registers 8
.line 37
sget-object v0, Lcom/tencent/live2/impl/V2TXLiveUtils$1;->a:[I
invoke-virtual {p0}, Lcom/tencent/live2/V2TXLiveDef$V2TXLiveVideoResolution;->ordinal()I
move-result p0
aget p0, v0, p0
const/16 v0, 0x384
const/16 v1, 0x258
const/16 v2, 0x190
const/16 v3, 0xfa
const/16 v4, 0x15e
const/16 v5, 0x5dc
const/16 v6, 0x320
packed-switch p0, :pswitch_data_48
:pswitch_19
move v0, v5
move v1, v6
goto :goto_42
:pswitch_1c
const/16 v1, 0x9c4
const/16 v0, 0xbb8
goto :goto_42
:pswitch_21
const/16 v1, 0x3e8
const/16 v0, 0x708
goto :goto_42
:pswitch_26
const/16 v1, 0x1f4
goto :goto_42
:pswitch_29
const/16 v0, 0x226
goto :goto_37
:pswitch_2c
move v0, v2
goto :goto_33
:pswitch_2e
move v0, v1
move v1, v2
goto :goto_42
:pswitch_31
const/16 v0, 0x177
:goto_33
move v1, v3
goto :goto_42
:pswitch_35
const/16 v0, 0x20d
:goto_37
move v1, v4
goto :goto_42
:pswitch_39
const/16 v1, 0xc8
const/16 v0, 0x12c
goto :goto_42
:pswitch_3e
const/16 v1, 0x64
const/16 v0, 0x96
.line 87
:goto_42
:pswitch_42
new-instance p0, Lcom/tencent/live2/impl/V2TXLiveUtils$a;
invoke-direct {p0, v1, v0}, Lcom/tencent/live2/impl/V2TXLiveUtils$a;-><init>(II)V
return-object p0
:pswitch_data_48
.packed-switch 0x1
:pswitch_3e
:pswitch_39
:pswitch_35
:pswitch_31
:pswitch_2e
:pswitch_42
:pswitch_2c
:pswitch_29
:pswitch_26
:pswitch_19
:pswitch_21
:pswitch_1c
.end packed-switch
.end method
.method public static parseLiveMode(Ljava/lang/String;)Lcom/tencent/live2/V2TXLiveDef$V2TXLiveMode;
.registers 3
const-string v0, "trtc://"
.line 15
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
const-string v1, "V2TXLiveUtils"
if-nez v0, :cond_23
const-string v0, "room://cloud.tencent.com/rtc"
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_23
const-string v0, "room://rtc.tencent.com"
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result p0
if-eqz p0, :cond_1b
goto :goto_23
:cond_1b
const-string p0, "parseLiveMode: rtmp."
.line 19
invoke-static {v1, p0}, Lcom/tencent/liteav/basic/log/TXCLog;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 20
sget-object p0, Lcom/tencent/live2/V2TXLiveDef$V2TXLiveMode;->TXLiveMode_RTMP:Lcom/tencent/live2/V2TXLiveDef$V2TXLiveMode;
return-object p0
:cond_23
:goto_23
const-string p0, "parseLiveMode: rtc."
.line 16
invoke-static {v1, p0}, Lcom/tencent/liteav/basic/log/TXCLog;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 17
sget-object p0, Lcom/tencent/live2/V2TXLiveDef$V2TXLiveMode;->TXLiveMode_RTC:Lcom/tencent/live2/V2TXLiveDef$V2TXLiveMode;
return-object p0
.end method
.method public static removeURLSensitiveInfo(Ljava/lang/String;)Ljava/lang/String;
.registers 7
.line 91
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_7
return-object p0
:cond_7
const/4 v0, 0x0
:try_start_8
const-string v1, "roomsig"
const-string v2, "privatemapkey"
const-string v3, "usersig"
.line 95
filled-new-array {v1, v2, v3}, [Ljava/lang/String;
move-result-object v1
move v2, v0
:goto_13
const/4 v3, 0x3
if-ge v2, v3, :cond_5b
.line 97
aget-object v3, v1, v2
invoke-virtual {p0, v3}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v3
if-eqz v3, :cond_4b
.line 98
aget-object v3, v1, v2
invoke-virtual {p0, v3}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v3
const/4 v4, -0x1
if-eq v3, v4, :cond_4b
const-string v5, "&"
.line 101
invoke-virtual {p0, v5, v3}, Ljava/lang/String;->indexOf(Ljava/lang/String;I)I
move-result v5
if-ne v5, v4, :cond_34
.line 104
invoke-virtual {p0, v0, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object p0
goto :goto_4b
.line 107
:cond_34
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0, v0, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v3
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0, v5}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v3
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
:try_end_4b
.catch Ljava/lang/Exception; {:try_start_8 .. :try_end_4b} :catch_4e
:cond_4b
:goto_4b
add-int/lit8 v2, v2, 0x1
goto :goto_13
:catch_4e
move-exception v1
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
aput-object v1, v2, v0
const-string v0, "V2TXLiveUtils"
const-string v1, "remove url sensitive info failed."
.line 113
invoke-static {v0, v1, v2}, Lcom/tencent/liteav/basic/log/TXCLog;->e(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
:cond_5b
return-object p0
.end method