NativeTRTCCloud$c.smali
.class public Lcom/tx/liteav/trtc/NativeTRTCCloud$c;
.super Ljava/lang/Thread;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/tx/liteav/trtc/NativeTRTCCloud;->downFile(Ljava/lang/String;Lcom/taobao/weex/bridge/JSCallback;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic a:Ljava/lang/String;
.field public final synthetic b:Lcom/taobao/weex/bridge/JSCallback;
.field public final synthetic c:Lcom/tx/liteav/trtc/NativeTRTCCloud;
# direct methods
.method public constructor <init>(Lcom/tx/liteav/trtc/NativeTRTCCloud;Ljava/lang/String;Lcom/taobao/weex/bridge/JSCallback;)V
.registers 4
iput-object p1, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->c:Lcom/tx/liteav/trtc/NativeTRTCCloud;
iput-object p2, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->a:Ljava/lang/String;
iput-object p3, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->b:Lcom/taobao/weex/bridge/JSCallback;
invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.registers 15
:try_start_0
invoke-static {}, Landroid/os/Environment;->getExternalStorageState()Ljava/lang/String;
move-result-object v0
const-string v1, "mounted"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_c6
new-instance v0, Ljava/net/URL;
iget-object v1, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->a:Ljava/lang/String;
invoke-direct {v0, v1}, Ljava/net/URL;-><init>(Ljava/lang/String;)V
invoke-virtual {v0}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection;
move-result-object v0
check-cast v0, Ljava/net/HttpURLConnection;
const v1, 0x7a120
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setConnectTimeout(I)V
:try_end_1f
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_1f} :catch_b6
const-string v1, "TAG"
:try_start_21
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "conn"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getInputStream()Ljava/io/InputStream;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getInputStream()Ljava/io/InputStream;
move-result-object v1
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
iget-object v2, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->c:Lcom/tx/liteav/trtc/NativeTRTCCloud;
const-string v3, "Download"
invoke-virtual {v2, v3}, Lcom/tx/liteav/trtc/NativeTRTCCloud;->createSDDir(Ljava/lang/String;)Ljava/io/File;
new-instance v2, Ljava/io/File;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {}, Landroid/os/Environment;->getExternalStorageDirectory()Ljava/io/File;
move-result-object v4
invoke-virtual {v4}, Ljava/io/File;->getCanonicalFile()Ljava/io/File;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v4, "/Download/"
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v4, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->a:Ljava/lang/String;
const-string v5, "/"
invoke-virtual {v4, v5}, Ljava/lang/String;->lastIndexOf(Ljava/lang/String;)I
move-result v5
add-int/lit8 v5, v5, 0x1
invoke-virtual {v4, v5}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
new-instance v3, Ljava/io/FileOutputStream;
invoke-direct {v3, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
new-instance v4, Ljava/io/BufferedInputStream;
invoke-direct {v4, v1}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V
const/16 v5, 0x400
new-array v5, v5, [B
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getContentLength()I
move-result v0
int-to-long v6, v0
const-wide/16 v8, 0x0
:goto_8b
invoke-virtual {v1, v5}, Ljava/io/InputStream;->read([B)I
move-result v0
const/4 v10, -0x1
if-eq v0, v10, :cond_ac
const/4 v10, 0x0
invoke-virtual {v3, v5, v10, v0}, Ljava/io/FileOutputStream;->write([BII)V
int-to-long v10, v0
add-long/2addr v8, v10
long-to-double v10, v8
const-wide/high16 v12, 0x4059000000000000L # 100.0
mul-double/2addr v10, v12
long-to-double v12, v6
div-double/2addr v10, v12
double-to-int v0, v10
iget-object v10, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->c:Lcom/tx/liteav/trtc/NativeTRTCCloud;
iget-object v10, v10, Lcom/tx/liteav/trtc/NativeTRTCCloud;->mainHandler:Landroid/os/Handler;
new-instance v11, Lcom/tx/liteav/trtc/NativeTRTCCloud$c$op234qwojf;
invoke-direct {v11, p0, v0, v2}, Lcom/tx/liteav/trtc/NativeTRTCCloud$c$op234qwojf;-><init>(Lcom/tx/liteav/trtc/NativeTRTCCloud$c;ILjava/io/File;)V
invoke-virtual {v10, v11}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
goto :goto_8b
:cond_ac
invoke-virtual {v3}, Ljava/io/FileOutputStream;->close()V
invoke-virtual {v4}, Ljava/io/BufferedInputStream;->close()V
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:try_end_b5
.catch Ljava/lang/Exception; {:try_start_21 .. :try_end_b5} :catch_b6
goto :goto_c6
:catch_b6
move-exception v0
iget-object v1, p0, Lcom/tx/liteav/trtc/NativeTRTCCloud$c;->c:Lcom/tx/liteav/trtc/NativeTRTCCloud;
iget-object v1, v1, Lcom/tx/liteav/trtc/NativeTRTCCloud;->mainHandler:Landroid/os/Handler;
new-instance v2, Lcom/tx/liteav/trtc/NativeTRTCCloud$c$a;
invoke-direct {v2, p0}, Lcom/tx/liteav/trtc/NativeTRTCCloud$c$a;-><init>(Lcom/tx/liteav/trtc/NativeTRTCCloud$c;)V
invoke-virtual {v1, v2}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
:cond_c6
:goto_c6
return-void
.end method