xi.smali
.class public Ldxoptimizer/xi;
.super Ljava/lang/Object;
.source "WriteSDCard.java"
# direct methods
.method public static a(Ljava/lang/String;Ljava/lang/String;)V
.registers 8
.prologue
.line 21
const/4 v1, 0x0
.line 23
:try_start_1
const-string v0, "mounted"
invoke-static {}, Landroid/os/Environment;->getExternalStorageState()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_a0
.line 24
new-instance v0, Ljava/io/File;
const-string v2, "/sdcard/dianxinos/"
invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 25
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v2
if-nez v2, :cond_1d
.line 26
invoke-virtual {v0}, Ljava/io/File;->mkdir()Z
.line 28
:cond_1d
new-instance v0, Ljava/io/File;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "/sdcard/dianxinos/"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 29
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v2
if-nez v2, :cond_54
.line 30
invoke-virtual {v0}, Ljava/io/File;->createNewFile()Z
.line 36
:cond_3e
:goto_3e
new-instance v2, Ljava/io/FileOutputStream;
const/4 v3, 0x1
invoke-direct {v2, v0, v3}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;Z)V
:try_end_44
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_44} :catch_66
.catchall {:try_start_1 .. :try_end_44} :catchall_8a
.line 37
:try_start_44
invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
move-result-object v0
invoke-virtual {v2, v0}, Ljava/io/FileOutputStream;->write([B)V
.line 38
invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
:try_end_4e
.catch Ljava/io/IOException; {:try_start_44 .. :try_end_4e} :catch_9d
.catchall {:try_start_44 .. :try_end_4e} :catchall_9a
.line 44
:goto_4e
if-eqz v2, :cond_53
.line 46
:try_start_50
invoke-virtual {v2}, Ljava/io/FileOutputStream;->close()V
:try_end_53
.catch Ljava/io/IOException; {:try_start_50 .. :try_end_53} :catch_81
.line 51
:cond_53
:goto_53
return-void
.line 31
:cond_54
:try_start_54
invoke-virtual {v0}, Ljava/io/File;->length()J
move-result-wide v2
const-wide/32 v4, 0x1400000
cmp-long v2, v2, v4
if-lez v2, :cond_3e
.line 32
invoke-virtual {v0}, Ljava/io/File;->delete()Z
.line 33
invoke-virtual {v0}, Ljava/io/File;->createNewFile()Z
:try_end_65
.catch Ljava/io/IOException; {:try_start_54 .. :try_end_65} :catch_66
.catchall {:try_start_54 .. :try_end_65} :catchall_8a
goto :goto_3e
.line 40
:catch_66
move-exception v0
.line 41
:goto_67
:try_start_67
sget-boolean v2, Ldxoptimizer/xa;->d:Z
if-eqz v2, :cond_72
.line 42
const-string v2, "stat.WriteSDCard"
const-string v3, "createNewFile has IOException!"
invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:try_end_72
.catchall {:try_start_67 .. :try_end_72} :catchall_8a
.line 44
:cond_72
if-eqz v1, :cond_53
.line 46
:try_start_74
invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
:try_end_77
.catch Ljava/io/IOException; {:try_start_74 .. :try_end_77} :catch_78
goto :goto_53
.line 47
:catch_78
move-exception v0
.line 48
const-string v1, "stat.WriteSDCard"
const-string v2, "closeFileOutStream has IOException!"
invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto :goto_53
.line 47
:catch_81
move-exception v0
.line 48
const-string v1, "stat.WriteSDCard"
const-string v2, "closeFileOutStream has IOException!"
invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto :goto_53
.line 44
:catchall_8a
move-exception v0
:goto_8b
if-eqz v1, :cond_90
.line 46
:try_start_8d
invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
:try_end_90
.catch Ljava/io/IOException; {:try_start_8d .. :try_end_90} :catch_91
.line 49
:cond_90
:goto_90
throw v0
.line 47
:catch_91
move-exception v1
.line 48
const-string v2, "stat.WriteSDCard"
const-string v3, "closeFileOutStream has IOException!"
invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto :goto_90
.line 44
:catchall_9a
move-exception v0
move-object v1, v2
goto :goto_8b
.line 40
:catch_9d
move-exception v0
move-object v1, v2
goto :goto_67
:cond_a0
move-object v2, v1
goto :goto_4e
.end method