EncodeUtils.smali
.class public Lcom/baidu/sapi2/base/utils/EncodeUtils;
.super Ljava/lang/Object;
.source "EncodeUtils.java"
# static fields
.field private static final TAG:Ljava/lang/String; = "EncodeUtils"
# direct methods
.method public constructor <init>()V
.registers 1
.prologue
.line 17
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static getDigest(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String;
.registers 8
.prologue
.line 28
const/4 v0, 0x0
.line 30
:try_start_1
new-instance v1, Ljava/io/FileInputStream;
invoke-direct {v1, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
.line 31
invoke-static {v1, p1}, Lcom/baidu/sapi2/base/utils/EncodeUtils;->getDigest(Ljava/io/InputStream;Ljava/lang/String;)Ljava/lang/String;
:try_end_9
.catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_9} :catch_b
move-result-object v0
.line 36
:goto_a
return-object v0
.line 32
:catch_b
move-exception v1
.line 33
invoke-virtual {v1}, Ljava/io/FileNotFoundException;->printStackTrace()V
.line 34
const-string v2, "EncodeUtils"
const/4 v3, 0x2
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
const-string v5, "getDigest()"
aput-object v5, v3, v4
const/4 v4, 0x1
aput-object v1, v3, v4
invoke-static {v2, v3}, Lcom/baidu/sapi2/base/debug/Log;->e(Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_a
.end method
.method static getDigest(Ljava/io/InputStream;Ljava/lang/String;)Ljava/lang/String;
.registers 7
.prologue
.line 46
const/4 v0, 0x0
.line 48
if-eqz p0, :cond_2c
.line 49
:try_start_3
invoke-static {p1}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v1
.line 50
const/16 v2, 0x2000
new-array v2, v2, [B
.line 52
:goto_b
invoke-virtual {p0, v2}, Ljava/io/InputStream;->read([B)I
move-result v3
const/4 v4, -0x1
if-eq v3, v4, :cond_21
.line 53
const/4 v4, 0x0
invoke-virtual {v1, v2, v4, v3}, Ljava/security/MessageDigest;->update([BII)V
:try_end_16
.catch Ljava/io/IOException; {:try_start_3 .. :try_end_16} :catch_17
.catch Ljava/security/NoSuchAlgorithmException; {:try_start_3 .. :try_end_16} :catch_3c
.catchall {:try_start_3 .. :try_end_16} :catchall_4b
goto :goto_b
.line 57
:catch_17
move-exception v1
.line 58
:try_start_18
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
:try_end_1b
.catchall {:try_start_18 .. :try_end_1b} :catchall_4b
.line 63
if-eqz p0, :cond_20
.line 64
:try_start_1d
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_20
.catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_37
.line 70
:cond_20
:goto_20
return-object v0
.line 55
:cond_21
:try_start_21
invoke-virtual {v1}, Ljava/security/MessageDigest;->digest()[B
move-result-object v1
const-string v2, ""
const/4 v3, 0x0
invoke-static {v1, v2, v3}, Lcom/baidu/android/common/security/MD5Util;->toHexString([BLjava/lang/String;Z)Ljava/lang/String;
:try_end_2b
.catch Ljava/io/IOException; {:try_start_21 .. :try_end_2b} :catch_17
.catch Ljava/security/NoSuchAlgorithmException; {:try_start_21 .. :try_end_2b} :catch_3c
.catchall {:try_start_21 .. :try_end_2b} :catchall_4b
move-result-object v0
.line 63
:cond_2c
if-eqz p0, :cond_20
.line 64
:try_start_2e
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_31
.catch Ljava/io/IOException; {:try_start_2e .. :try_end_31} :catch_32
goto :goto_20
.line 66
:catch_32
move-exception v1
.line 67
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_20
.line 66
:catch_37
move-exception v1
.line 67
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_20
.line 59
:catch_3c
move-exception v1
.line 60
:try_start_3d
invoke-virtual {v1}, Ljava/security/NoSuchAlgorithmException;->printStackTrace()V
:try_end_40
.catchall {:try_start_3d .. :try_end_40} :catchall_4b
.line 63
if-eqz p0, :cond_20
.line 64
:try_start_42
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_45
.catch Ljava/io/IOException; {:try_start_42 .. :try_end_45} :catch_46
goto :goto_20
.line 66
:catch_46
move-exception v1
.line 67
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_20
.line 62
:catchall_4b
move-exception v0
.line 63
if-eqz p0, :cond_51
.line 64
:try_start_4e
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_51
.catch Ljava/io/IOException; {:try_start_4e .. :try_end_51} :catch_52
.line 69
:cond_51
:goto_51
throw v0
.line 66
:catch_52
move-exception v1
.line 67
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_51
.end method
.method public static getSHA1(Ljava/io/File;)Ljava/lang/String;
.registers 2
.prologue
.line 90
const-string v0, "SHA1"
invoke-static {p0, v0}, Lcom/baidu/sapi2/base/utils/EncodeUtils;->getDigest(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static toMd5([B)Ljava/lang/String;
.registers 2
.prologue
.line 80
const/4 v0, 0x0
invoke-static {p0, v0}, Lcom/baidu/android/common/security/MD5Util;->toMd5([BZ)Ljava/lang/String;
move-result-object v0
return-object v0
.end method