AvpScanEngineFactory.smali
.class public Lcom/baidu/security/avp/api/AvpScanEngineFactory;
.super Ljava/lang/Object;
.source "AvpScanEngineFactory.java"
# static fields
.field private static final AVP_CONFIG_FILENAME:Ljava/lang/String; = "avp_config.properties"
.field private static final KEY_AVP_CLOUD_USE_CEC:Ljava/lang/String; = "avp_cloudscan_use_cec"
.field private static final KEY_AVP_RUNTYPE:Ljava/lang/String; = "avp_runtype"
.field private static final KEY_AVP_SCANENGINE_IMPL:Ljava/lang/String; = "avp_scan_engine_impl"
.field private static final KEY_AVP_SDK_VCODE:Ljava/lang/String; = "avp_sdk_vcode"
.field private static final KEY_AVP_SDK_VNAME:Ljava/lang/String; = "avp_sdk_vname"
.field private static final KEY_DEBUGABLE:Ljava/lang/String; = "debugable"
.field private static final KEY_DOMAIN_ALL:Ljava/lang/String; = "domain_all"
.field private static final KEY_ENABLE_LIB_UPDATE_ALARM:Ljava/lang/String; = "enable_lib_update_alarm"
.field private static classLoader:Ljava/lang/ClassLoader;
.field private static config_avp_cloud_use_cec:Ljava/lang/String;
.field private static config_avp_runtype:Ljava/lang/String;
.field private static config_avp_scanengine_impl:Ljava/lang/String;
.field private static config_avp_sdk_vcode:I
.field private static config_avp_sdk_vname:Ljava/lang/String;
.field private static engine:Lcom/baidu/security/avp/api/IAvpScanEngine;
.field private static mEnableLibUpdateAlarm:Z
.field private static scanEngineClazz:Ljava/lang/Class;
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 48
const/4 v0, 0x1
sput-boolean v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->mEnableLibUpdateAlarm:Z
return-void
.end method
.method public constructor <init>()V
.registers 1
.prologue
.line 26
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static declared-synchronized createAVPScanEngine(Landroid/content/Context;Ljava/lang/String;Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;)V
.registers 10
.prologue
.line 52
const-class v2, Lcom/baidu/security/avp/api/AvpScanEngineFactory;
monitor-enter v2
if-eqz p2, :cond_8
.line 53
:try_start_5
invoke-interface {p2}, Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;->onAvpSdkLoadingStart()V
.line 55
:cond_8
new-instance v3, Ljava/util/Properties;
invoke-direct {v3}, Ljava/util/Properties;-><init>()V
.line 56
const/4 v1, 0x0
.line 57
new-instance v4, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;
invoke-direct {v4, p0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;-><init>(Landroid/content/Context;)V
:try_end_13
.catchall {:try_start_5 .. :try_end_13} :catchall_194
.line 59
:try_start_13
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_182
.line 60
invoke-virtual {v4}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getAvpConfigStrCache()Ljava/lang/String;
move-result-object p1
.line 64
:goto_1d
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_197
.line 65
invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
move-result-object v0
const/4 v5, 0x2
invoke-static {v0, v5}, Landroid/util/Base64;->decode([BI)[B
move-result-object v5
.line 66
new-instance v0, Ljava/io/ByteArrayInputStream;
invoke-direct {v0, v5}, Ljava/io/ByteArrayInputStream;-><init>([B)V
move-object v1, v0
.line 70
:goto_32
invoke-virtual {v3, v1}, Ljava/util/Properties;->load(Ljava/io/InputStream;)V
:try_end_35
.catch Ljava/io/IOException; {:try_start_13 .. :try_end_35} :catch_187
.catchall {:try_start_13 .. :try_end_35} :catchall_1a3
.line 78
:try_start_35
invoke-static {v1}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/io/Closeable;)V
.line 81
const-string v0, "debugable"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 82
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_1a8
const-string v1, "true"
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_1a8
.line 83
const/4 v1, 0x1
sput-boolean v1, Lcom/baidu/security/avp/api/b/a;->a:Z
.line 87
:goto_4f
sget-boolean v1, Lcom/baidu/security/avp/api/b/a;->a:Z
invoke-virtual {v4, v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setDegbugable(Z)V
.line 88
const-string v1, "avpsdk"
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "AvpScanEngineFactory debug : "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v5, " ; AvpFeatureConfig.DEBUG : "
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
sget-boolean v5, Lcom/baidu/security/avp/api/b/a;->a:Z
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v1, v0}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 90
const-string v0, "avpsdk"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "AvpScanEngineFactory avpConfigParam : "
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 93
const-string v0, "enable_lib_update_alarm"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 94
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_1b2
.line 95
const-string v1, "true"
invoke-virtual {v0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_1ad
.line 96
const/4 v0, 0x1
sput-boolean v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->mEnableLibUpdateAlarm:Z
.line 103
:goto_ab
const-string v0, "avpsdk"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "AvpScanEngineFactory mEnableLibUpdateAlarm : "
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
sget-boolean v5, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->mEnableLibUpdateAlarm:Z
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 106
const-string v0, "domain_all"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 107
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_d3
.line 108
sget-object v0, Lcom/baidu/security/avp/api/b/a;->c:Ljava/lang/String;
.line 110
:cond_d3
sput-object v0, Lcom/baidu/security/avp/api/b/a;->b:Ljava/lang/String;
.line 111
sget-object v0, Lcom/baidu/security/avp/api/b/a;->b:Ljava/lang/String;
invoke-virtual {v4, v0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setServerDomain(Ljava/lang/String;)V
.line 114
const-string v0, "avp_cloudscan_use_cec"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_cloud_use_cec:Ljava/lang/String;
.line 115
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_cloud_use_cec:Ljava/lang/String;
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
invoke-virtual {v4, v0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setCloudInfoAlgorithm(Ljava/lang/String;)V
.line 118
const-string v0, "avp_runtype"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_runtype:Ljava/lang/String;
.line 119
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_runtype:Ljava/lang/String;
invoke-virtual {v4, v0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setAvpRuntype(Ljava/lang/String;)V
.line 120
const-string v0, "avpsdk"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "AvpScanEngineFactory runType : "
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v4}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getAvpRuntype()Ljava/lang/String;
move-result-object v5
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 122
const-string v0, "static"
sget-object v1, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_runtype:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_155
.line 123
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object v0
iget-object v0, v0, Landroid/content/pm/ApplicationInfo;->sourceDir:Ljava/lang/String;
invoke-virtual {v4, v0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setCurrentAvpSdkPath(Ljava/lang/String;)V
.line 124
const-string v0, "avpsdk"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "AvpScanEngineFactory runType static, currentAvpSdkPath : "
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 125
invoke-virtual {v4}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getCurrentAvpSdkPath()Ljava/lang/String;
move-result-object v5
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 124
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 127
invoke-virtual {v4}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getCurrentAvpSdkPath()Ljava/lang/String;
move-result-object v0
const-string v1, "avpSdkDir"
const/4 v5, 0x0
.line 128
invoke-virtual {p0, v1, v5}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;
move-result-object v1
invoke-virtual {v1}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v1
.line 127
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 130
:cond_155
const-string v0, "avpsdk"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "AvpScanEngineFactory currentAvpSdkPath : "
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 131
invoke-virtual {v4}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getCurrentAvpSdkPath()Ljava/lang/String;
move-result-object v5
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 130
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 132
invoke-virtual {v4}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getCurrentAvpSdkPath()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_1b7
.line 133
if-eqz p2, :cond_180
.line 134
invoke-interface {p2}, Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;->onAvpSdkLoadingFail()V
:try_end_180
.catchall {:try_start_35 .. :try_end_180} :catchall_194
.line 164
:cond_180
:goto_180
monitor-exit v2
return-void
.line 62
:cond_182
:try_start_182
invoke-virtual {v4, p1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setAvpConfigStrCache(Ljava/lang/String;)V
:try_end_185
.catch Ljava/io/IOException; {:try_start_182 .. :try_end_185} :catch_187
.catchall {:try_start_182 .. :try_end_185} :catchall_1a3
goto/16 :goto_1d
.line 71
:catch_187
move-exception v0
.line 72
:try_start_188
invoke-static {v0}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/lang/Throwable;)V
.line 73
if-eqz p2, :cond_190
.line 74
invoke-interface {p2}, Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;->onAvpSdkLoadingFail()V
:try_end_190
.catchall {:try_start_188 .. :try_end_190} :catchall_1a3
.line 78
:cond_190
:try_start_190
invoke-static {v1}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/io/Closeable;)V
:try_end_193
.catchall {:try_start_190 .. :try_end_193} :catchall_194
goto :goto_180
.line 52
:catchall_194
move-exception v0
monitor-exit v2
throw v0
.line 68
:cond_197
:try_start_197
invoke-virtual {p0}, Landroid/content/Context;->getAssets()Landroid/content/res/AssetManager;
move-result-object v0
const-string v5, "avp_config.properties"
invoke-virtual {v0, v5}, Landroid/content/res/AssetManager;->open(Ljava/lang/String;)Ljava/io/InputStream;
:try_end_1a0
.catch Ljava/io/IOException; {:try_start_197 .. :try_end_1a0} :catch_187
.catchall {:try_start_197 .. :try_end_1a0} :catchall_1a3
move-result-object v1
goto/16 :goto_32
.line 78
:catchall_1a3
move-exception v0
:try_start_1a4
invoke-static {v1}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/io/Closeable;)V
throw v0
.line 85
:cond_1a8
const/4 v1, 0x0
sput-boolean v1, Lcom/baidu/security/avp/api/b/a;->a:Z
goto/16 :goto_4f
.line 98
:cond_1ad
const/4 v0, 0x0
sput-boolean v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->mEnableLibUpdateAlarm:Z
goto/16 :goto_ab
.line 101
:cond_1b2
const/4 v0, 0x0
sput-boolean v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->mEnableLibUpdateAlarm:Z
goto/16 :goto_ab
.line 140
:cond_1b7
const-string v0, "avp_scan_engine_impl"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_scanengine_impl:Ljava/lang/String;
.line 141
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_scanengine_impl:Ljava/lang/String;
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_21c
.line 142
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_scanengine_impl:Ljava/lang/String;
invoke-virtual {v0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v0
const-string v1, "Standard"
invoke-virtual {v1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_1fc
.line 143
const-string v0, "standard_edition"
invoke-virtual {v4, v0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setAvpEditionType(Ljava/lang/String;)V
.line 148
:cond_1de
:goto_1de
const-string v0, "avp_sdk_vname"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_sdk_vname:Ljava/lang/String;
.line 149
const-string v0, "avp_sdk_vcode"
invoke-virtual {v3, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 150
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
:try_end_1ef
.catchall {:try_start_1a4 .. :try_end_1ef} :catchall_194
move-result v1
if-nez v1, :cond_1f8
.line 152
:try_start_1f2
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
sput v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_sdk_vcode:I
:try_end_1f8
.catch Ljava/lang/NumberFormatException; {:try_start_1f2 .. :try_end_1f8} :catch_214
.catchall {:try_start_1f2 .. :try_end_1f8} :catchall_194
.line 158
:cond_1f8
:goto_1f8
:try_start_1f8
invoke-static {p0, p2}, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->createAvpEngine(Landroid/content/Context;Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;)V
goto :goto_180
.line 144
:cond_1fc
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_scanengine_impl:Ljava/lang/String;
invoke-virtual {v0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v0
const-string v1, "Enterprise"
invoke-virtual {v1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_1de
.line 145
const-string v0, "enterprise_edition"
invoke-virtual {v4, v0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setAvpEditionType(Ljava/lang/String;)V
goto :goto_1de
.line 153
:catch_214
move-exception v0
.line 154
const/4 v1, 0x1
sput v1, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_sdk_vcode:I
.line 155
invoke-static {v0}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/lang/Throwable;)V
goto :goto_1f8
.line 160
:cond_21c
if-eqz p2, :cond_180
.line 161
invoke-interface {p2}, Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;->onAvpSdkLoadingFail()V
:try_end_221
.catchall {:try_start_1f8 .. :try_end_221} :catchall_194
goto/16 :goto_180
.end method
.method private static createAvpEngine(Landroid/content/Context;Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;)V
.registers 10
.prologue
const/4 v7, 0x1
const/4 v6, 0x0
.line 167
const-string v0, "avpsdk"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-class v2, Lcom/baidu/security/avp/api/AvpScanEngineFactory;
invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " createAvpEngine"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 169
new-instance v1, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;
invoke-direct {v1, p0}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;-><init>(Landroid/content/Context;)V
.line 170
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getCurrentAvpSdkPath()Ljava/lang/String;
move-result-object v0
.line 171
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getIsAvpSdkInit()Z
move-result v2
invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v2
.line 172
const-string v3, "avpsdk"
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "createAvpEngine isAvpSdkInit : "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " , currentPluginPath : "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v3, v4}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 174
invoke-virtual {v2}, Ljava/lang/Boolean;->booleanValue()Z
move-result v2
if-nez v2, :cond_18b
.line 176
sget-object v2, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_sdk_vname:Ljava/lang/String;
invoke-virtual {v1, v2}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setSdkVName(Ljava/lang/String;)V
.line 177
sget v2, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_sdk_vcode:I
invoke-virtual {v1, v2}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setSdkVCode(I)V
.line 178
invoke-virtual {v1, v7}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setIsAvpSdkInit(Z)V
.line 179
invoke-static {p0}, Lcom/baidu/security/avp/api/c/d;->a(Landroid/content/Context;)I
move-result v2
invoke-virtual {v1, v2}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setPluginHostVersionCode(I)V
.line 184
:goto_6d
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getPluginHostVersionCode()I
move-result v2
.line 185
const-string v3, "avpsdk"
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "checkAppCoverInstall hostVCode : "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, " , last hostVCode : "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
.line 186
invoke-static {p0}, Lcom/baidu/security/avp/api/c/d;->a(Landroid/content/Context;)I
move-result v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
.line 185
invoke-static {v3, v4}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 187
invoke-static {p0}, Lcom/baidu/security/avp/api/c/d;->a(Landroid/content/Context;)I
move-result v3
if-eq v3, v2, :cond_b8
.line 188
const-string v2, "avpsdk"
const-string v3, " app reinstall, versionCode change, unzip all so"
invoke-static {v2, v3}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 190
const-string v2, "avpSdkDir"
.line 191
invoke-virtual {p0, v2, v6}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;
move-result-object v2
invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v2
.line 190
invoke-static {v0, v2}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 192
invoke-static {p0}, Lcom/baidu/security/avp/api/c/d;->a(Landroid/content/Context;)I
move-result v2
invoke-virtual {v1, v2}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->setPluginHostVersionCode(I)V
.line 195
:cond_b8
const-string v2, "avpsdk"
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "createAvpEngine config_avp_scanengine_impl : "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
sget-object v4, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_scanengine_impl:Ljava/lang/String;
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
const-string v4, " , currentPluginPath : "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
const-string v4, " , runType : "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
.line 198
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getAvpRuntype()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
.line 195
invoke-static {v2, v3}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 200
:try_start_ea
const-string v2, "dynamic"
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getAvpRuntype()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_194
.line 201
new-instance v2, Ldalvik/system/DexClassLoader;
const-string v3, "avpSdkDir"
const/4 v4, 0x0
.line 202
invoke-virtual {p0, v3, v4}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;
move-result-object v3
invoke-virtual {v3}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v3
const/4 v4, 0x0
.line 203
invoke-virtual {p0}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v5
invoke-direct {v2, v0, v3, v4, v5}, Ldalvik/system/DexClassLoader;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/ClassLoader;)V
sput-object v2, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->classLoader:Ljava/lang/ClassLoader;
.line 207
:cond_10d
:goto_10d
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->classLoader:Ljava/lang/ClassLoader;
sget-object v2, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->config_avp_scanengine_impl:Ljava/lang/String;
invoke-virtual {v0, v2}, Ljava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
sput-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->scanEngineClazz:Ljava/lang/Class;
.line 208
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->scanEngineClazz:Ljava/lang/Class;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Class;
const/4 v3, 0x0
const-class v4, Landroid/content/Context;
aput-object v4, v2, v3
invoke-virtual {v0, v2}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v0
.line 209
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
.line 210
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v4
aput-object v4, v2, v3
.line 209
invoke-virtual {v0, v2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/baidu/security/avp/api/IAvpScanEngine;
sput-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->engine:Lcom/baidu/security/avp/api/IAvpScanEngine;
.line 211
if-eqz p1, :cond_13e
.line 212
sget-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->engine:Lcom/baidu/security/avp/api/IAvpScanEngine;
invoke-interface {p1, v0}, Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;->onAvpSdkLoadingSuccess(Lcom/baidu/security/avp/api/IAvpScanEngine;)V
.line 215
:cond_13e
const-string v0, "avpsdk"
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "ENTERPRISE_EDITION, avpEditionType : "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getAvpEditionType()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, " , mEnableLibUpdateAlarm : "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
sget-boolean v3, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->mEnableLibUpdateAlarm:Z
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v0, v2}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 217
const-string v0, "enterprise_edition"
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getAvpEditionType()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_1b4
sget-boolean v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->mEnableLibUpdateAlarm:Z
if-eqz v0, :cond_1b4
.line 218
const-string v0, "avpsdk"
const-string v1, "ENTERPRISE_EDITION, do acs lib update alarm !!! "
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 219
const-string v0, "update_local_scan_library"
.line 220
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
const-wide/32 v4, 0xa4cb80
add-long/2addr v2, v4
.line 219
invoke-static {p0, v0, v2, v3}, Lcom/baidu/security/avp/api/a/a;->a(Landroid/content/Context;Ljava/lang/String;J)V
:try_end_18a
.catch Ljava/lang/Exception; {:try_start_ea .. :try_end_18a} :catch_1aa
.line 231
:cond_18a
:goto_18a
return-void
.line 181
:cond_18b
const-string v2, "avpsdk"
const-string v3, "createAvpEngine avpsdk already , fast forward"
invoke-static {v2, v3}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
goto/16 :goto_6d
.line 204
:cond_194
:try_start_194
const-string v0, "static"
invoke-virtual {v1}, Lcom/baidu/security/avp/api/pref/AvpSdkPreference;->getAvpRuntype()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_10d
.line 205
const-class v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;
invoke-virtual {v0}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v0
sput-object v0, Lcom/baidu/security/avp/api/AvpScanEngineFactory;->classLoader:Ljava/lang/ClassLoader;
:try_end_1a8
.catch Ljava/lang/Exception; {:try_start_194 .. :try_end_1a8} :catch_1aa
goto/16 :goto_10d
.line 225
:catch_1aa
move-exception v0
.line 226
invoke-static {v0}, Lcom/baidu/security/avp/api/c/a;->a(Ljava/lang/Throwable;)V
.line 227
if-eqz p1, :cond_18a
.line 228
invoke-interface {p1}, Lcom/baidu/security/avp/api/IAvpScanEngineFactoryListener;->onAvpSdkLoadingFail()V
goto :goto_18a
.line 222
:cond_1b4
:try_start_1b4
const-string v0, "avpsdk"
const-string v1, "ENTERPRISE_EDITION, cancel lib update alarm !!! "
invoke-static {v0, v1}, Lcom/baidu/security/avp/api/c/b;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 223
const-string v0, "update_local_scan_library"
invoke-static {p0, v0}, Lcom/baidu/security/avp/api/a/a;->a(Landroid/content/Context;Ljava/lang/String;)V
:try_end_1c0
.catch Ljava/lang/Exception; {:try_start_1b4 .. :try_end_1c0} :catch_1aa
goto :goto_18a
.end method