.class public Lcom/tencent/smtt/sdk/TbsDownloader; .super Ljava/lang/Object; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback; } .end annotation # static fields .field public static final DEBUG_DISABLE_DOWNLOAD:Z = false .field public static DOWNLOAD_OVERSEA_TBS:Z = false .field public static final LOGTAG:Ljava/lang/String; = "TbsDownload" .field static a:Z .field private static b:Ljava/lang/String; .field private static c:Landroid/content/Context; .field private static d:Landroid/os/Handler; .field private static e:Ljava/lang/String; .field private static f:Ljava/lang/Object; .field private static g:Lcom/tencent/smtt/sdk/ag; .field private static h:Landroid/os/HandlerThread; .field private static i:Z .field private static j:Z .field private static k:Z .field private static l:J # direct methods .method static constructor ()V .locals 2 const/4 v0, 0x0 new-array v1, v0, [B sput-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->f:Ljava/lang/Object; sput-boolean v0, Lcom/tencent/smtt/sdk/TbsDownloader;->i:Z sput-boolean v0, Lcom/tencent/smtt/sdk/TbsDownloader;->j:Z sput-boolean v0, Lcom/tencent/smtt/sdk/TbsDownloader;->k:Z const-wide/16 v0, -0x1 sput-wide v0, Lcom/tencent/smtt/sdk/TbsDownloader;->l:J return-void .end method .method public constructor ()V .locals 0 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method static synthetic a()Landroid/content/Context; .locals 1 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; return-object v0 .end method .method protected static a(I)Ljava/io/File; .locals 8 invoke-static {}, Lcom/tencent/smtt/sdk/TbsShareManager;->getCoreProviderAppList()[Ljava/lang/String; move-result-object v0 array-length v1, v0 const/4 v2, 0x0 const/4 v3, 0x0 move-object v4, v3 const/4 v3, 0x0 :goto_0 if-ge v3, v1, :cond_4 aget-object v5, v0, v3 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v6}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; move-result-object v6 iget-object v6, v6, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String; invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v6 if-eqz v6, :cond_0 goto :goto_3 :cond_0 new-instance v4, Ljava/io/File; sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v7, 0x4 invoke-static {v6, v5, v7, v2}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;Ljava/lang/String;IZ)Ljava/lang/String; move-result-object v5 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v6}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result v6 if-eqz v6, :cond_1 const-string v6, "x5.oversea.tbs.org" goto :goto_1 :cond_1 const-string v6, "x5.tbs.org" :goto_1 invoke-direct {v4, v5, v6}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V invoke-virtual {v4}, Ljava/io/File;->exists()Z move-result v5 if-eqz v5, :cond_3 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5, v4}, Lcom/tencent/smtt/utils/a;->a(Landroid/content/Context;Ljava/io/File;)I move-result v5 if-ne v5, p0, :cond_2 const-string p0, "TbsDownload" new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "local tbs version fond,path = " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v4}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {p0, v0}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V goto :goto_4 :cond_2 const-string v5, "TbsDownload" const-string v6, "version is not match" goto :goto_2 :cond_3 const-string v5, "TbsDownload" const-string v6, "can not find local backup core file" :goto_2 invoke-static {v5, v6}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V :goto_3 add-int/lit8 v3, v3, 0x1 goto :goto_0 :cond_4 :goto_4 return-object v4 .end method .method static a(Landroid/content/Context;)Ljava/lang/String; .locals 5 sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->b:Ljava/lang/String; invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result p0 if-nez p0, :cond_0 sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->b:Ljava/lang/String; return-object p0 :cond_0 invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale; move-result-object p0 new-instance v0, Ljava/lang/StringBuffer; invoke-direct {v0}, Ljava/lang/StringBuffer;->()V sget-object v1, Landroid/os/Build$VERSION;->RELEASE:Ljava/lang/String; :try_start_0 new-instance v2, Ljava/lang/String; const-string v3, "UTF-8" invoke-virtual {v1, v3}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B move-result-object v3 const-string v4, "ISO8859-1" invoke-direct {v2, v3, v4}, Ljava/lang/String;->([BLjava/lang/String;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 move-object v1, v2 :catch_0 invoke-virtual {v1}, Ljava/lang/String;->length()I move-result v2 if-lez v2, :cond_1 :goto_0 invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; goto :goto_1 :cond_1 const-string v1, "1.0" goto :goto_0 :goto_1 const-string v1, "; " invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; invoke-virtual {p0}, Ljava/util/Locale;->getLanguage()Ljava/lang/String; move-result-object v1 if-eqz v1, :cond_2 invoke-virtual {v1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; invoke-virtual {p0}, Ljava/util/Locale;->getCountry()Ljava/lang/String; move-result-object p0 if-eqz p0, :cond_3 const-string v1, "-" invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; invoke-virtual {p0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String; move-result-object p0 goto :goto_2 :cond_2 const-string p0, "en" :goto_2 invoke-virtual {v0, p0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; :cond_3 const-string p0, "REL" sget-object v1, Landroid/os/Build$VERSION;->CODENAME:Ljava/lang/String; invoke-virtual {p0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result p0 if-eqz p0, :cond_4 sget-object p0, Landroid/os/Build;->MODEL:Ljava/lang/String; :try_start_1 new-instance v1, Ljava/lang/String; const-string v2, "UTF-8" invoke-virtual {p0, v2}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B move-result-object v2 const-string v3, "ISO8859-1" invoke-direct {v1, v2, v3}, Ljava/lang/String;->([BLjava/lang/String;)V :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1 move-object p0, v1 :catch_1 invoke-virtual {p0}, Ljava/lang/String;->length()I move-result v1 if-lez v1, :cond_4 const-string v1, "; " invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; invoke-virtual {v0, p0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; :cond_4 sget-object p0, Landroid/os/Build;->ID:Ljava/lang/String; if-nez p0, :cond_5 const-string p0, "" goto :goto_3 :cond_5 sget-object p0, Landroid/os/Build;->ID:Ljava/lang/String; :goto_3 const-string v1, "[\u4e00-\u9fa5]" const-string v2, "" invoke-virtual {p0, v1, v2}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object p0 invoke-virtual {p0}, Ljava/lang/String;->length()I move-result v1 if-lez v1, :cond_6 const-string v1, " Build/" invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; invoke-virtual {v0, p0}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; :cond_6 const-string p0, "Mozilla/5.0 (Linux; U; Android %s) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 Mobile Safari/533.1" const/4 v1, 0x1 new-array v1, v1, [Ljava/lang/Object; const/4 v2, 0x0 aput-object v0, v1, v2 invoke-static {p0, v1}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; move-result-object p0 sput-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->b:Ljava/lang/String; return-object p0 .end method .method private static a(Ljava/lang/String;)Ljava/lang/String; .locals 0 if-nez p0, :cond_0 const-string p0, "" :cond_0 return-object p0 .end method .method private static a(ZLcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;)V .locals 2 const-string v0, "TbsDownload" const-string v1, "[TbsDownloader.queryConfig]" invoke-static {v0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v1, 0x64 invoke-virtual {v0, v1}, Landroid/os/Handler;->removeMessages(I)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; invoke-static {v0, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;I)Landroid/os/Message; move-result-object v0 if-eqz p1, :cond_0 iput-object p1, v0, Landroid/os/Message;->obj:Ljava/lang/Object; :cond_0 const/4 p1, 0x0 iput p1, v0, Landroid/os/Message;->arg1:I iput p0, v0, Landroid/os/Message;->arg1:I invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V return-void .end method .method private static a(Landroid/content/Context;ZLcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;)Z .locals 5 invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 sget v1, Landroid/os/Build$VERSION;->SDK_INT:I const/4 v2, 0x0 const/16 v3, 0x8 if-ge v1, v3, :cond_0 const/16 p0, -0x66 :goto_0 invoke-virtual {v0, p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V return v2 :cond_0 sget-boolean v1, Lcom/tencent/smtt/sdk/QbSdk;->c:Z if-nez v1, :cond_2 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v1 if-eqz v1, :cond_2 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->c()Z move-result v1 if-nez v1, :cond_2 if-eqz p2, :cond_1 invoke-interface {p2, v2, v2}, Lcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;->onNeedDownloadFinish(ZI)V :cond_1 return v2 :cond_2 iget-object v1, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "is_oversea" invoke-interface {v1, v3}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z move-result v1 if-nez v1, :cond_4 if-eqz p1, :cond_3 const-string v1, "com.tencent.mm" invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; move-result-object v3 iget-object v3, v3, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String; invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-nez v1, :cond_3 const-string p1, "TbsDownload" const-string v1, "needDownload-oversea is true, but not WX" invoke-static {p1, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V const/4 p1, 0x0 :cond_3 iget-object v1, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "is_oversea" invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v4 invoke-interface {v1, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V sput-boolean p1, Lcom/tencent/smtt/sdk/TbsDownloader;->j:Z const-string v1, "TbsDownload" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "needDownload-first-called--isoversea = " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {v1, p1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V :cond_4 invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result p0 if-eqz p0, :cond_6 sget p0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 p1, 0x10 if-eq p0, p1, :cond_6 sget p0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 p1, 0x11 if-eq p0, p1, :cond_6 sget p0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 p1, 0x12 if-eq p0, p1, :cond_6 const-string p0, "TbsDownload" new-instance p1, Ljava/lang/StringBuilder; invoke-direct {p1}, Ljava/lang/StringBuilder;->()V const-string v1, "needDownload- return false, because of version is " invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget v1, Landroid/os/Build$VERSION;->SDK_INT:I invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, ", and overea" invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {p0, p1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-eqz p2, :cond_5 invoke-interface {p2, v2, v2}, Lcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;->onNeedDownloadFinish(ZI)V :cond_5 const/16 p0, -0x67 goto/16 :goto_0 :cond_6 iget-object p0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string p1, "device_cpuabi" const/4 v1, 0x0 invoke-interface {p0, p1, v1}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object p0 sput-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result p0 if-nez p0, :cond_8 :try_start_0 const-string p0, "i686|mips|x86_64" invoke-static {p0}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; move-result-object p0 sget-object p1, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; invoke-virtual {p0, p1}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; move-result-object p0 :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_1 :catch_0 move-object p0, v1 :goto_1 if-eqz p0, :cond_8 invoke-virtual {p0}, Ljava/util/regex/Matcher;->find()Z move-result p0 if-eqz p0, :cond_8 if-eqz p2, :cond_7 invoke-interface {p2, v2, v2}, Lcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;->onNeedDownloadFinish(ZI)V :cond_7 const/16 p0, -0x68 goto/16 :goto_0 :cond_8 const/4 p0, 0x1 return p0 .end method .method private static a(Landroid/content/Context;ZZ)Z .locals 17 invoke-static/range {p0 .. p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 const/4 v1, 0x0 if-nez p1, :cond_6 iget-object v3, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v4, "app_versionname" invoke-interface {v3, v4, v1}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v3 iget-object v4, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v5, "app_versioncode" const/4 v6, 0x0 invoke-interface {v4, v5, v6}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v4 iget-object v5, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v7, "app_metadata" invoke-interface {v5, v7, v1}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v5 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v7}, Lcom/tencent/smtt/utils/b;->a(Landroid/content/Context;)Ljava/lang/String; move-result-object v7 sget-object v8, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v8}, Lcom/tencent/smtt/utils/b;->b(Landroid/content/Context;)I move-result v8 sget-object v9, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const-string v10, "com.tencent.mm.BuildInfo.CLIENT_VERSION" invoke-static {v9, v10}, Lcom/tencent/smtt/utils/b;->a(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String; move-result-object v9 const-string v10, "TbsDownload" new-instance v11, Ljava/lang/StringBuilder; invoke-direct {v11}, Ljava/lang/StringBuilder;->()V const-string v12, "[TbsDownloader.needSendQueryRequest] appVersionName=" invoke-virtual {v11, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v11, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v12, " oldAppVersionName=" invoke-virtual {v11, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v11, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v12, " appVersionCode=" invoke-virtual {v11, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v11, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v12, " oldAppVersionCode=" invoke-virtual {v11, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v11, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v12, " appMetadata=" invoke-virtual {v11, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v11, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v12, " oldAppVersionMetadata=" invoke-virtual {v11, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v11, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v11 invoke-static {v10, v11}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v10 iget-object v12, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v13, "last_check" const-wide/16 v14, 0x0 invoke-interface {v12, v13, v14, v15}, Landroid/content/SharedPreferences;->getLong(Ljava/lang/String;J)J move-result-wide v12 const-string v1, "TbsDownload" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v6, "[TbsDownloader.needSendQueryRequest] timeLastCheck=" invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v12, v13}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; const-string v6, " timeNow=" invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v10, v11}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-eqz p2, :cond_0 iget-object v1, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "last_check" invoke-interface {v1, v2}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z move-result v1 const-string v2, "TbsDownload" new-instance v6, Ljava/lang/StringBuilder; invoke-direct {v6}, Ljava/lang/StringBuilder;->()V const-string v14, "[TbsDownloader.needSendQueryRequest] hasLaskCheckKey=" invoke-virtual {v6, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v6 invoke-static {v2, v6}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-eqz v1, :cond_0 const-wide/16 v1, 0x0 cmp-long v6, v12, v1 if-nez v6, :cond_0 move-wide v12, v10 :cond_0 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getRetryInterval()J move-result-wide v0 const-string v2, "TbsDownload" new-instance v6, Ljava/lang/StringBuilder; invoke-direct {v6}, Ljava/lang/StringBuilder;->()V const-string v14, "retryInterval = " invoke-virtual {v6, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v6, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; const-string v14, " s" invoke-virtual {v6, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v6 invoke-static {v2, v6}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sub-long/2addr v10, v12 const-wide/16 v12, 0x3e8 mul-long v0, v0, v12 cmp-long v2, v10, v0 if-lez v2, :cond_2 :cond_1 :goto_0 const/4 v1, 0x0 const/4 v2, 0x1 goto/16 :goto_2 :cond_2 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 if-eqz v0, :cond_3 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->findCoreForThirdPartyApp(Landroid/content/Context;)I move-result v0 if-nez v0, :cond_3 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->e()Z move-result v0 if-nez v0, :cond_3 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v0 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v0, v1}, Lcom/tencent/smtt/sdk/am;->d(Landroid/content/Context;)V goto :goto_0 :cond_3 if-eqz v7, :cond_4 if-eqz v8, :cond_4 if-eqz v9, :cond_4 invoke-virtual {v7, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_1 if-ne v8, v4, :cond_1 invoke-virtual {v9, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-nez v0, :cond_5 goto :goto_0 :cond_4 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 if-eqz v0, :cond_5 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "timeNow - timeLastCheck is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v10, v11}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; const-string v1, " TbsShareManager.findCoreForThirdPartyApp(sAppContext) is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsShareManager;->findCoreForThirdPartyApp(Landroid/content/Context;)I move-result v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, " sendRequestWithSameHostCoreVersion() is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->e()Z move-result v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; const-string v1, " appVersionName is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, " appVersionCode is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, " appMetadata is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, " oldAppVersionName is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, " oldAppVersionCode is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, " oldAppVersionMetadata is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 move-object v1, v0 goto :goto_1 :cond_5 const/4 v1, 0x0 :goto_1 const/4 v2, 0x0 :goto_2 move/from16 v16, v2 goto :goto_3 :cond_6 const/4 v1, 0x0 const/16 v16, 0x1 :goto_3 if-nez v16, :cond_7 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 if-eqz v0, :cond_7 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v0 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a()Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo; move-result-object v0 const/16 v2, -0x77 invoke-virtual {v0, v2}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setErrorCode(I)V invoke-virtual {v0, v1}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setFailDetail(Ljava/lang/String;)V sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v1 sget-object v2, Lcom/tencent/smtt/sdk/TbsLogReport$EventType;->TYPE_DOWNLOAD:Lcom/tencent/smtt/sdk/TbsLogReport$EventType; invoke-virtual {v1, v2, v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Lcom/tencent/smtt/sdk/TbsLogReport$EventType;Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;)V :cond_7 return v16 .end method .method private static a(Ljava/lang/String;IZZ)Z .locals 32 .annotation build Landroid/annotation/TargetApi; value = 0xb .end annotation move-object/from16 v0, p0 move/from16 v1, p1 move/from16 v3, p3 const-string v4, "TbsDownload" new-instance v5, Ljava/lang/StringBuilder; invoke-direct {v5}, Ljava/lang/StringBuilder;->()V const-string v6, "[TbsDownloader.readResponse] response=" invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v5 invoke-static {v4, v5}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v4}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v4 invoke-static/range {p0 .. p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v5 const/4 v6, 0x0 if-eqz v5, :cond_1 if-eqz p2, :cond_0 const/16 v0, -0x6c :goto_0 invoke-virtual {v4, v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V goto :goto_1 :cond_0 const/16 v0, -0xd0 goto :goto_0 :goto_1 return v6 :cond_1 new-instance v5, Lorg/json/JSONObject; invoke-direct {v5, v0}, Lorg/json/JSONObject;->(Ljava/lang/String;)V const-string v0, "RET" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v0 if-eqz v0, :cond_3 if-eqz p2, :cond_2 const/16 v0, -0x6d :goto_2 invoke-virtual {v4, v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V goto :goto_3 :cond_2 const/16 v0, -0xd1 goto :goto_2 :goto_3 return v6 :cond_3 const-string v0, "RESPONSECODE" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v7 const-string v0, "DOWNLOADURL" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String; move-result-object v8 const-string v0, "URLLIST" const-string v9, "" invoke-virtual {v5, v0, v9}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v9 const-string v0, "TBSAPKSERVERVERSION" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v10 const-string v0, "DOWNLOADMAXFLOW" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v11 const-string v0, "DOWNLOAD_MIN_FREE_SPACE" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v12 const-string v0, "DOWNLOAD_SUCCESS_MAX_RETRYTIMES" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v13 const-string v0, "DOWNLOAD_FAILED_MAX_RETRYTIMES" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v14 const-string v0, "DOWNLOAD_SINGLE_TIMEOUT" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getLong(Ljava/lang/String;)J move-result-wide v15 const-string v0, "TBSAPKFILESIZE" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getLong(Ljava/lang/String;)J move-result-wide v17 const-string v0, "RETRY_INTERVAL" move/from16 v19, v7 const-wide/16 v6, 0x0 invoke-virtual {v5, v0, v6, v7}, Lorg/json/JSONObject;->optLong(Ljava/lang/String;J)J move-result-wide v20 const-string v0, "FLOWCTR" const/4 v6, -0x1 invoke-virtual {v5, v0, v6}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I move-result v6 :try_start_0 const-string v0, "USEBBACKUPVER" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v0 :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_4 :catch_0 const/4 v0, 0x0 :goto_4 iget-object v7, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "use_backup_version" invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v0 invoke-interface {v7, v3, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; if-eqz p2, :cond_5 sget-boolean v0, Lcom/tencent/smtt/sdk/QbSdk;->i:Z if-eqz v0, :cond_5 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 if-eqz v0, :cond_5 :try_start_1 const-string v0, "BUGLY" const/4 v7, 0x0 invoke-virtual {v5, v0, v7}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I move-result v0 invoke-static {}, Lcom/tencent/smtt/sdk/TbsExtensionFunctionManager;->getInstance()Lcom/tencent/smtt/sdk/TbsExtensionFunctionManager; move-result-object v7 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; :try_end_1 .catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_1} :catch_3 move-wide/from16 v22, v15 :try_start_2 const-string v15, "bugly_switch.txt" :try_end_2 .catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_2} :catch_2 move/from16 v24, v14 const/4 v14, 0x1 if-ne v0, v14, :cond_4 const/4 v0, 0x1 goto :goto_5 :cond_4 const/4 v0, 0x0 :goto_5 :try_start_3 invoke-virtual {v7, v3, v15, v0}, Lcom/tencent/smtt/sdk/TbsExtensionFunctionManager;->setFunctionEnable(Landroid/content/Context;Ljava/lang/String;Z)Z :try_end_3 .catch Ljava/lang/Throwable; {:try_start_3 .. :try_end_3} :catch_1 goto :goto_7 :catch_1 move-exception v0 goto :goto_6 :catch_2 move-exception v0 move/from16 v24, v14 goto :goto_6 :catch_3 move-exception v0 move/from16 v24, v14 move-wide/from16 v22, v15 :goto_6 const-string v3, "qbsdk" new-instance v7, Ljava/lang/StringBuilder; invoke-direct {v7}, Ljava/lang/StringBuilder;->()V const-string v14, "throwable:" invoke-virtual {v7, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/Throwable;->toString()Ljava/lang/String; move-result-object v0 invoke-virtual {v7, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v3, v0}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V goto :goto_7 :cond_5 move/from16 v24, v14 move-wide/from16 v22, v15 :goto_7 if-eqz p2, :cond_7 :try_start_4 const-string v0, "TEMPLATESWITCH" const/4 v3, 0x0 invoke-virtual {v5, v0, v3}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I move-result v0 const/4 v3, 0x1 and-int/2addr v0, v3 if-eqz v0, :cond_6 const/4 v0, 0x1 goto :goto_8 :cond_6 const/4 v0, 0x0 :goto_8 invoke-static {}, Lcom/tencent/smtt/sdk/TbsExtensionFunctionManager;->getInstance()Lcom/tencent/smtt/sdk/TbsExtensionFunctionManager; move-result-object v3 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const-string v14, "cookie_switch.txt" invoke-virtual {v3, v7, v14, v0}, Lcom/tencent/smtt/sdk/TbsExtensionFunctionManager;->setFunctionEnable(Landroid/content/Context;Ljava/lang/String;Z)Z const-string v3, "TbsDownload" new-instance v7, Ljava/lang/StringBuilder; invoke-direct {v7}, Ljava/lang/StringBuilder;->()V const-string v14, "useCookieCompatiable:" invoke-virtual {v7, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v7, v0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v3, v0}, Lcom/tencent/smtt/utils/TbsLog;->w(Ljava/lang/String;Ljava/lang/String;)V :try_end_4 .catch Ljava/lang/Throwable; {:try_start_4 .. :try_end_4} :catch_4 goto :goto_9 :catch_4 move-exception v0 const-string v3, "qbsdk" new-instance v7, Ljava/lang/StringBuilder; invoke-direct {v7}, Ljava/lang/StringBuilder;->()V const-string v14, "throwable:" invoke-virtual {v7, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/Throwable;->toString()Ljava/lang/String; move-result-object v0 invoke-virtual {v7, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v3, v0}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V :cond_7 :goto_9 const-string v0, "" :try_start_5 const-string v7, "PKGMD5" invoke-virtual {v5, v7}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String; move-result-object v7 :try_end_5 .catch Ljava/lang/Exception; {:try_start_5 .. :try_end_5} :catch_a :try_start_6 const-string v14, "RESETX5" invoke-virtual {v5, v14}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v14 :try_end_6 .catch Ljava/lang/Exception; {:try_start_6 .. :try_end_6} :catch_9 :try_start_7 const-string v15, "UPLOADLOG" invoke-virtual {v5, v15}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v15 :try_end_7 .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_7} :catch_8 :try_start_8 const-string v3, "RESETTOKEN" invoke-virtual {v5, v3}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z move-result v3 :try_end_8 .catch Ljava/lang/Exception; {:try_start_8 .. :try_end_8} :catch_7 if-eqz v3, :cond_9 :try_start_9 const-string v3, "RESETTOKEN" invoke-virtual {v5, v3}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v3 :try_end_9 .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_9} :catch_5 if-eqz v3, :cond_8 const/4 v3, 0x1 goto :goto_a :cond_8 const/4 v3, 0x0 :goto_a move-object/from16 v25, v0 goto :goto_b :catch_5 move-object/from16 v26, v0 goto :goto_f :cond_9 move-object/from16 v25, v0 const/4 v3, 0x0 :goto_b :try_start_a const-string v0, "SETTOKEN" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z move-result v0 if-eqz v0, :cond_a const-string v0, "SETTOKEN" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String; move-result-object v0 :try_end_a .catch Ljava/lang/Exception; {:try_start_a .. :try_end_a} :catch_6 move-object/from16 v26, v0 goto :goto_c :cond_a move-object/from16 v26, v25 :goto_c :try_start_b const-string v0, "ENABLE_LOAD_RENAME_FILE_LOCK" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z move-result v0 if-eqz v0, :cond_c const-string v0, "ENABLE_LOAD_RENAME_FILE_LOCK" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v0 :try_end_b .catch Ljava/lang/Exception; {:try_start_b .. :try_end_b} :catch_b if-eqz v0, :cond_b goto :goto_d :cond_b const/4 v0, 0x0 goto :goto_e :cond_c :goto_d const/4 v0, 0x1 :goto_e move-object/from16 v27, v7 move/from16 v28, v13 move v7, v0 move-object/from16 v0, v26 goto :goto_13 :catch_6 move-object/from16 v26, v25 goto :goto_12 :catch_7 move-object/from16 v25, v0 move-object/from16 v26, v25 :goto_f const/4 v3, 0x0 goto :goto_12 :catch_8 move-object/from16 v25, v0 move-object/from16 v26, v25 const/4 v3, 0x0 goto :goto_11 :catch_9 move-object/from16 v25, v0 move-object/from16 v26, v25 const/4 v3, 0x0 goto :goto_10 :catch_a move-object/from16 v25, v0 move-object/from16 v26, v25 const/4 v3, 0x0 const/4 v7, 0x0 :goto_10 const/4 v14, 0x0 :goto_11 const/4 v15, 0x0 :catch_b :goto_12 move-object/from16 v27, v7 move/from16 v28, v13 move-object/from16 v0, v26 const/4 v7, 0x1 :goto_13 :try_start_c const-string v13, "RESETDECOUPLECORE" invoke-virtual {v5, v13}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v13 :try_end_c .catch Ljava/lang/Exception; {:try_start_c .. :try_end_c} :catch_c goto :goto_14 :catch_c const/4 v13, 0x0 :goto_14 move/from16 v29, v12 :try_start_d const-string v12, "RESETTODECOUPLECORE" invoke-virtual {v5, v12}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v12 :try_end_d .catch Ljava/lang/Exception; {:try_start_d .. :try_end_d} :catch_d goto :goto_15 :catch_d const/4 v12, 0x0 :goto_15 sget-object v16, Lcom/tencent/smtt/sdk/TbsDownloader;->f:Ljava/lang/Object; monitor-enter v16 if-eqz v3, :cond_d :try_start_e iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; move/from16 v30, v11 const-string v11, "tbs_deskey_token" move-object/from16 v31, v9 const-string v9, "" invoke-interface {v3, v11, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_16 :catchall_0 move-exception v0 goto/16 :goto_2d :cond_d move-object/from16 v31, v9 move/from16 v30, v11 :goto_16 invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v3 if-nez v3, :cond_e invoke-virtual {v0}, Ljava/lang/String;->length()I move-result v3 const/16 v9, 0x60 if-ne v3, v9, :cond_e new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v0, "&" invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-static {}, Lcom/tencent/smtt/utils/p;->c()Ljava/lang/String; move-result-object v0 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v9, "tbs_deskey_token" invoke-interface {v3, v9, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :cond_e monitor-exit v16 :try_end_e .catchall {:try_start_e .. :try_end_e} :catchall_0 const/4 v3, 0x1 if-ne v14, v3, :cond_11 if-eqz p2, :cond_f const/16 v0, -0x6e :goto_17 invoke-virtual {v4, v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V goto :goto_18 :cond_f const/16 v0, -0xd2 goto :goto_17 :goto_18 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; if-ne v12, v3, :cond_10 goto :goto_19 :cond_10 const/4 v3, 0x0 :goto_19 invoke-static {v0, v3}, Lcom/tencent/smtt/sdk/QbSdk;->reset(Landroid/content/Context;Z)V :goto_1a const/4 v1, 0x0 return v1 :cond_11 if-nez v7, :cond_12 invoke-virtual {v4, v7}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setTbsCoreLoadRenameFileLockEnable(Z)V :cond_12 if-ne v13, v3, :cond_13 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/QbSdk;->resetDecoupleCore(Landroid/content/Context;)V :cond_13 if-ne v15, v3, :cond_14 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v7, 0x68 invoke-virtual {v0, v7}, Landroid/os/Handler;->removeMessages(I)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; invoke-static {v0, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;I)Landroid/os/Message; move-result-object v0 invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V :cond_14 const-wide/32 v11, 0x15180 if-ne v6, v3, :cond_16 const-wide/32 v6, 0x93a80 cmp-long v0, v20, v6 if-lez v0, :cond_15 move-wide/from16 v20, v6 :cond_15 const-wide/16 v6, 0x0 cmp-long v0, v20, v6 if-lez v0, :cond_17 goto :goto_1b :cond_16 const-wide/16 v6, 0x0 :cond_17 move-wide/from16 v20, v11 :goto_1b invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->getRetryIntervalInSeconds()J move-result-wide v11 cmp-long v0, v11, v6 if-ltz v0, :cond_18 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->getRetryIntervalInSeconds()J move-result-wide v20 :cond_18 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "retry_interval" invoke-static/range {v20 .. v21}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v6 invoke-interface {v0, v3, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; if-eqz p2, :cond_19 :try_start_f const-string v0, "DECOUPLECOREVERSION" invoke-virtual {v5, v0}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v0 :goto_1c move v6, v0 goto :goto_1d :cond_19 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "tbs_decouplecoreversion" const/4 v6, 0x0 invoke-interface {v0, v3, v6}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 :try_end_f .catch Ljava/lang/Exception; {:try_start_f .. :try_end_f} :catch_e goto :goto_1c :catch_e const/4 v6, 0x0 :goto_1d :try_start_10 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "tbs_downloaddecouplecore" const/4 v7, 0x0 invoke-interface {v0, v3, v7}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 :try_end_10 .catch Ljava/lang/Exception; {:try_start_10 .. :try_end_10} :catch_f goto :goto_1e :catch_f const/4 v0, 0x0 :goto_1e if-eqz p2, :cond_1a sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v3 if-nez v3, :cond_1a if-nez v6, :cond_1a invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v6}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result v6 :cond_1a const-string v3, "TbsDownload" new-instance v7, Ljava/lang/StringBuilder; invoke-direct {v7}, Ljava/lang/StringBuilder;->()V const-string v9, "in response decoupleCoreVersion is " invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v7, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v7 invoke-static {v3, v7}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v7, "tbs_decouplecoreversion" invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v9 invoke-interface {v3, v7, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v7, "tbs_downloaddecouplecore" invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v9 invoke-interface {v3, v7, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v3 if-nez v3, :cond_1c if-lez v6, :cond_1b invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v7}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result v3 if-eq v6, v3, :cond_1b invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v7}, Lcom/tencent/smtt/sdk/am;->i(Landroid/content/Context;)I move-result v3 if-ne v6, v3, :cond_1b invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v6}, Lcom/tencent/smtt/sdk/am;->l(Landroid/content/Context;)Z goto :goto_1f :cond_1b if-nez v6, :cond_1c :try_start_11 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v6}, Lcom/tencent/smtt/sdk/am;->n(Landroid/content/Context;)Ljava/io/File; move-result-object v3 invoke-static {v3}, Lcom/tencent/smtt/utils/k;->b(Ljava/io/File;)V :try_end_11 .catch Ljava/lang/Throwable; {:try_start_11 .. :try_end_11} :catch_10 goto :goto_1f :catch_10 nop :cond_1c :goto_1f invoke-static {v8}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v3 if-eqz v3, :cond_1e sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v3 if-eqz v3, :cond_1e iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_needdownload" const/4 v3, 0x0 invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v5 invoke-interface {v0, v1, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v4}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V if-eqz p2, :cond_1d sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0, v10, v3}, Lcom/tencent/smtt/sdk/TbsShareManager;->writeCoreInfoForThirdPartyApp(Landroid/content/Context;IZ)V :cond_1d return v3 :cond_1e const-string v3, "TbsDownload" new-instance v6, Ljava/lang/StringBuilder; invoke-direct {v6}, Ljava/lang/StringBuilder;->()V const-string v7, "in response responseCode is " invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move/from16 v7, v19 invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v6 invoke-static {v3, v6}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-nez v7, :cond_21 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_responsecode" invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_needdownload" const/4 v3, 0x0 invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v5 invoke-interface {v0, v1, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; if-eqz p2, :cond_1f iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_interrupt_code_reason" const/16 v2, -0x6f invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v2 invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_20 :cond_1f iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_interrupt_code_reason" const/16 v2, -0xd3 invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v4, v2}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V :goto_20 invoke-virtual {v4}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 if-nez v0, :cond_20 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->startDecoupleCoreIfNeeded()Z :cond_20 const/4 v3, 0x0 return v3 :cond_21 const/4 v3, 0x0 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v6}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v6 iget-object v6, v6, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v9, "tbs_download_version" invoke-interface {v6, v9, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v6 if-le v6, v10, :cond_22 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; invoke-virtual {v3}, Lcom/tencent/smtt/sdk/ag;->d()V invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v9, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v9}, Lcom/tencent/smtt/sdk/am;->m(Landroid/content/Context;)V :cond_22 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v3 if-nez v3, :cond_24 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v9, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v9}, Lcom/tencent/smtt/sdk/am;->g(Landroid/content/Context;)I move-result v3 if-lt v3, v10, :cond_23 const/4 v9, 0x1 goto :goto_21 :cond_23 const/4 v9, 0x0 :goto_21 const-string v11, "TbsDownload" new-instance v12, Ljava/lang/StringBuilder; invoke-direct {v12}, Ljava/lang/StringBuilder;->()V const-string v13, "tmpCoreVersion is " invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v12, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v3, " tbsDownloadVersion is" invoke-virtual {v12, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v12, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-static {v11, v3}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V goto :goto_22 :cond_24 const/4 v9, 0x0 :goto_22 if-ge v1, v10, :cond_25 invoke-static {v8}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v3 if-nez v3, :cond_25 if-eqz v9, :cond_2d :cond_25 const/4 v3, 0x1 if-eq v0, v3, :cond_2d iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "tbs_needdownload" const/4 v5, 0x0 invoke-static {v5}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v7 invoke-interface {v0, v3, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; if-eqz p2, :cond_29 invoke-static {v8}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-eqz v0, :cond_26 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v2, "tbs_download_interrupt_code_reason" const/16 v3, -0x7c :goto_23 invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v2, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_25 :cond_26 if-gtz v10, :cond_27 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v2, "tbs_download_interrupt_code_reason" const/16 v3, -0x7d goto :goto_23 :cond_27 if-lt v1, v10, :cond_28 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v2, "tbs_download_interrupt_code_reason" const/16 v3, -0x7f goto :goto_23 :cond_28 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v2, "tbs_download_interrupt_code_reason" const/16 v3, -0x70 goto :goto_23 :cond_29 const/16 v0, -0xd4 invoke-static {v8}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v2 if-eqz v2, :cond_2a const/16 v0, -0xd9 goto :goto_24 :cond_2a if-gtz v10, :cond_2b const/16 v0, -0xda goto :goto_24 :cond_2b if-lt v1, v10, :cond_2c const/16 v0, -0xdb :cond_2c :goto_24 iget-object v2, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "tbs_download_interrupt_code_reason" invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v5 invoke-interface {v2, v3, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v4, v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V :goto_25 invoke-virtual {v4}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V const-string v0, "TbsDownload" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "version error or downloadUrl empty ,return ahead tbsLocalVersion=" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, " tbsDownloadVersion=" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, " tbsLastDownloadVersion=" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, " downloadUrl=" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V goto/16 :goto_1a :cond_2d const/4 v1, 0x0 iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v6, "tbs_downloadurl" const/4 v9, 0x0 invoke-interface {v3, v6, v9}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v3 invoke-virtual {v8, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v3 if-nez v3, :cond_2e sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; invoke-virtual {v3}, Lcom/tencent/smtt/sdk/ag;->d()V iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v6, "tbs_download_failed_retrytimes" invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v9 invoke-interface {v3, v6, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v6, "tbs_download_success_retrytimes" invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v9 invoke-interface {v3, v6, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :cond_2e iget-object v1, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "tbs_download_version" invoke-static {v10}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v6 invoke-interface {v1, v3, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; const-string v1, "TbsDownload" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v6, "put KEY_TBS_DOWNLOAD_V is " invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-static {v1, v3}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-lez v10, :cond_30 const/4 v1, 0x1 if-ne v0, v1, :cond_2f iget-object v3, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v6, "tbs_download_version_type" invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v9 invoke-interface {v3, v6, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_26 :cond_2f iget-object v1, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "tbs_download_version_type" const/4 v6, 0x0 invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v9 invoke-interface {v1, v3, v9}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :goto_26 const-string v1, "TbsDownload" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v6, "put KEY_TBS_DOWNLOAD_V_TYPE is " invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v1, v0}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V :cond_30 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_downloadurl" invoke-interface {v0, v1, v8}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_downloadurl_list" move-object/from16 v3, v31 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_responsecode" invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_maxflow" invoke-static/range {v30 .. v30}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_min_free_space" invoke-static/range {v29 .. v29}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_success_max_retrytimes" invoke-static/range {v28 .. v28}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_failed_max_retrytimes" invoke-static/range {v24 .. v24}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_single_timeout" invoke-static/range {v22 .. v23}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_apkfilesize" invoke-static/range {v17 .. v18}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v4}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V move-object/from16 v0, v27 if-eqz v0, :cond_31 iget-object v1, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "tbs_apk_md5" invoke-interface {v1, v3, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :cond_31 move/from16 v1, p3 if-nez v1, :cond_33 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v0 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v0, v3, v10}, Lcom/tencent/smtt/sdk/am;->a(Landroid/content/Context;I)Z move-result v0 if-eqz v0, :cond_33 if-eqz p2, :cond_32 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_interrupt_code_reason" const/16 v2, -0x71 invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v2 invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_27 :cond_32 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_download_interrupt_code_reason" const/16 v2, -0xd5 invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v4, v2}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V :goto_27 iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_needdownload" const/4 v2, 0x0 invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :goto_28 const/4 v2, 0x1 goto/16 :goto_2c :cond_33 const/16 v0, 0x64 if-nez v1, :cond_37 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; const/4 v6, 0x1 if-eq v7, v6, :cond_35 const/4 v6, 0x2 if-ne v7, v6, :cond_34 goto :goto_29 :cond_34 const/4 v6, 0x0 goto :goto_2a :cond_35 :goto_29 const/4 v6, 0x1 :goto_2a invoke-virtual {v3, v1, v6}, Lcom/tencent/smtt/sdk/ag;->a(ZZ)Z move-result v1 if-eqz v1, :cond_37 iget-object v1, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v2, "tbs_needdownload" const/4 v3, 0x0 invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v6 invoke-interface {v1, v2, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v1 invoke-virtual {v1}, Lcom/tencent/smtt/sdk/TbsLogReport;->a()Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo; move-result-object v1 invoke-virtual {v1, v0}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setErrorCode(I)V new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v2, "use local backup apk in needDownload" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; iget-object v2, v2, Lcom/tencent/smtt/sdk/ag;->a:Ljava/lang/String; invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-virtual {v1, v0}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setFailDetail(Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_downloaddecouplecore" const/4 v3, 0x0 invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 const/4 v2, 0x1 if-ne v0, v2, :cond_36 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v0 sget-object v2, Lcom/tencent/smtt/sdk/TbsLogReport$EventType;->TYPE_DOWNLOAD_DECOUPLE:Lcom/tencent/smtt/sdk/TbsLogReport$EventType; :goto_2b invoke-virtual {v0, v2, v1}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Lcom/tencent/smtt/sdk/TbsLogReport$EventType;Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;)V goto :goto_28 :cond_36 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v0 sget-object v2, Lcom/tencent/smtt/sdk/TbsLogReport$EventType;->TYPE_DOWNLOAD:Lcom/tencent/smtt/sdk/TbsLogReport$EventType; goto :goto_2b :cond_37 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v1 iget-object v1, v1, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "tbs_download_version_type" const/4 v6, 0x0 invoke-interface {v1, v3, v6}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v1 const/4 v3, 0x1 if-ne v1, v3, :cond_39 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; invoke-virtual {v1}, Lcom/tencent/smtt/sdk/ag;->a()Z move-result v1 if-eqz v1, :cond_39 iget-object v1, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v2, "tbs_needdownload" invoke-static {v6}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v3 invoke-interface {v1, v2, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v1 invoke-virtual {v1}, Lcom/tencent/smtt/sdk/TbsLogReport;->a()Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo; move-result-object v1 invoke-virtual {v1, v0}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setErrorCode(I)V new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v2, "installDecoupleCoreFromBackup" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; iget-object v2, v2, Lcom/tencent/smtt/sdk/ag;->a:Ljava/lang/String; invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-virtual {v1, v0}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setFailDetail(Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_downloaddecouplecore" const/4 v3, 0x0 invoke-interface {v0, v2, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 const/4 v2, 0x1 if-ne v0, v2, :cond_38 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v0 sget-object v2, Lcom/tencent/smtt/sdk/TbsLogReport$EventType;->TYPE_DOWNLOAD_DECOUPLE:Lcom/tencent/smtt/sdk/TbsLogReport$EventType; goto :goto_2b :cond_38 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v0 sget-object v2, Lcom/tencent/smtt/sdk/TbsLogReport$EventType;->TYPE_DOWNLOAD:Lcom/tencent/smtt/sdk/TbsLogReport$EventType; goto :goto_2b :cond_39 if-nez p2, :cond_3a const/16 v0, -0xd8 invoke-virtual {v4, v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V :cond_3a iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_needdownload" const/4 v2, 0x1 invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :goto_2c const-string v0, "stop_pre_oat" const/4 v1, 0x0 invoke-virtual {v5, v0, v1}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I move-result v0 if-ne v0, v2, :cond_3b iget-object v0, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "tbs_stop_preoat" invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; :cond_3b invoke-virtual {v4}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V return v2 :goto_2d :try_start_12 monitor-exit v16 :try_end_12 .catchall {:try_start_12 .. :try_end_12} :catchall_0 throw v0 .end method .method static synthetic a(ZZ)Z .locals 0 invoke-static {p0, p1}, Lcom/tencent/smtt/sdk/TbsDownloader;->b(ZZ)Z move-result p0 return p0 .end method .method static synthetic a(ZZZ)Z .locals 0 invoke-static {p0, p1, p2}, Lcom/tencent/smtt/sdk/TbsDownloader;->c(ZZZ)Z move-result p0 return p0 .end method .method static synthetic b()Lcom/tencent/smtt/sdk/ag; .locals 1 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; return-object v0 .end method .method protected static b(I)Ljava/io/File; .locals 9 invoke-static {}, Lcom/tencent/smtt/sdk/TbsShareManager;->getCoreProviderAppList()[Ljava/lang/String; move-result-object v0 array-length v1, v0 const/4 v2, 0x0 const/4 v3, 0x0 move-object v4, v3 const/4 v3, 0x0 :goto_0 if-ge v3, v1, :cond_3 aget-object v4, v0, v3 new-instance v5, Ljava/io/File; sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v7, 0x4 invoke-static {v6, v4, v7, v2}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;Ljava/lang/String;IZ)Ljava/lang/String; move-result-object v6 sget-object v8, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v8}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result v8 if-eqz v8, :cond_0 const-string v8, "x5.oversea.tbs.org" goto :goto_1 :cond_0 const-string v8, "x5.tbs.org" :goto_1 invoke-direct {v5, v6, v8}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V invoke-virtual {v5}, Ljava/io/File;->exists()Z move-result v6 if-eqz v6, :cond_1 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v6, v5}, Lcom/tencent/smtt/utils/a;->a(Landroid/content/Context;Ljava/io/File;)I move-result v6 if-ne v6, p0, :cond_1 const-string p0, "TbsDownload" new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V :goto_2 const-string v1, "local tbs version fond,path = " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {p0, v0}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V goto :goto_3 :cond_1 new-instance v5, Ljava/io/File; sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v6, v4, v7, v2}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;Ljava/lang/String;IZ)Ljava/lang/String; move-result-object v4 const-string v6, "x5.tbs.decouple" invoke-direct {v5, v4, v6}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V invoke-virtual {v5}, Ljava/io/File;->exists()Z move-result v4 if-eqz v4, :cond_2 sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v4, v5}, Lcom/tencent/smtt/utils/a;->a(Landroid/content/Context;Ljava/io/File;)I move-result v4 if-ne v4, p0, :cond_2 const-string p0, "TbsDownload" new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V goto :goto_2 :cond_2 add-int/lit8 v3, v3, 0x1 move-object v4, v5 goto :goto_0 :cond_3 move-object v5, v4 :goto_3 return-object v5 .end method .method private static b(ZZZ)Lorg/json/JSONObject; .locals 12 const-string v0, "TbsDownload" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "[TbsDownloader.postJsonData]isQuery: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; const-string v2, " forDecoupleCore is " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Landroid/content/Context;)Ljava/lang/String; move-result-object v1 sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v2}, Lcom/tencent/smtt/utils/b;->d(Landroid/content/Context;)Ljava/lang/String; move-result-object v2 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/utils/b;->c(Landroid/content/Context;)Ljava/lang/String; move-result-object v3 sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v4}, Lcom/tencent/smtt/utils/b;->f(Landroid/content/Context;)Ljava/lang/String; move-result-object v4 const-string v5, "" const-string v6, "" invoke-static {}, Ljava/util/TimeZone;->getDefault()Ljava/util/TimeZone; move-result-object v7 invoke-virtual {v7}, Ljava/util/TimeZone;->getID()Ljava/lang/String; move-result-object v7 if-eqz v7, :cond_0 move-object v5, v7 :cond_0 :try_start_0 sget-object v8, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const-string v9, "phone" invoke-virtual {v8, v9}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object v8 check-cast v8, Landroid/telephony/TelephonyManager; check-cast v8, Landroid/telephony/TelephonyManager; if-eqz v8, :cond_1 invoke-virtual {v8}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String; move-result-object v8 :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 move-object v7, v8 goto :goto_0 :catch_0 move-exception v8 invoke-virtual {v8}, Ljava/lang/Exception;->printStackTrace()V :cond_1 :goto_0 if-eqz v7, :cond_2 move-object v6, v7 :cond_2 new-instance v7, Lorg/json/JSONObject; invoke-direct {v7}, Lorg/json/JSONObject;->()V :try_start_1 const-string v8, "TIMEZONEID" invoke-virtual {v7, v8, v5}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string v5, "COUNTRYISO" invoke-virtual {v7, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string v5, "PROTOCOLVERSION" const/4 v6, 0x1 invoke-virtual {v7, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v5 const/4 v8, 0x0 if-eqz v5, :cond_4 sget-boolean v5, Lcom/tencent/smtt/sdk/QbSdk;->c:Z if-eqz v5, :cond_3 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5, v8}, Lcom/tencent/smtt/sdk/TbsShareManager;->a(Landroid/content/Context;Z)I move-result v5 goto :goto_1 :cond_3 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v5 iget-object v5, v5, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v9, "tbs_download_version" invoke-interface {v5, v9, v8}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v5 goto :goto_1 :cond_4 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v5 sget-object v9, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v5, v9}, Lcom/tencent/smtt/sdk/am;->k(Landroid/content/Context;)I move-result v5 if-nez v5, :cond_5 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v9 sget-object v10, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v9, v10}, Lcom/tencent/smtt/sdk/am;->j(Landroid/content/Context;)Z move-result v9 if-eqz v9, :cond_5 const/4 v5, -0x1 :cond_5 const-string v9, "TbsDownload" new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "[TbsDownloader.postJsonData] tbsLocalVersion=" invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v11, " isDownloadForeground=" invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v10, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-static {v9, v10}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-eqz p1, :cond_7 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v9 sget-object v10, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v9, v10}, Lcom/tencent/smtt/sdk/am;->j(Landroid/content/Context;)Z move-result v9 if-eqz v9, :cond_6 goto :goto_1 :cond_6 const/4 v5, 0x0 :cond_7 :goto_1 if-eqz p0, :cond_8 const-string v9, "FUNCTION" const/4 v10, 0x2 invoke-virtual {v7, v9, v10}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; goto :goto_3 :cond_8 const-string v9, "FUNCTION" if-nez v5, :cond_9 const/4 v10, 0x0 goto :goto_2 :cond_9 const/4 v10, 0x1 :goto_2 invoke-virtual {v7, v9, v10}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; :goto_3 sget-object v9, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v9}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v9 if-eqz v9, :cond_a invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->f()Lorg/json/JSONArray; move-result-object p0 const-string v9, "TBSVLARR" invoke-virtual {v7, v9, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; iget-object v9, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v10, "last_thirdapp_sendrequest_coreversion" invoke-virtual {p0}, Lorg/json/JSONArray;->toString()Ljava/lang/String; move-result-object p0 invoke-interface {v9, v10, p0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V sget-boolean p0, Lcom/tencent/smtt/sdk/QbSdk;->c:Z if-eqz p0, :cond_b const-string p0, "THIRDREQ" invoke-virtual {v7, p0, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; goto :goto_4 :cond_a invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->h()Lorg/json/JSONArray; move-result-object v9 sget-object v10, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v10}, Lcom/tencent/smtt/utils/Apn;->getApnType(Landroid/content/Context;)I move-result v10 const/4 v11, 0x3 if-eq v10, v11, :cond_b invoke-virtual {v9}, Lorg/json/JSONArray;->length()I move-result v10 if-eqz v10, :cond_b if-nez v5, :cond_b if-eqz p0, :cond_b const-string p0, "TBSBACKUPARR" invoke-virtual {v7, p0, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; :cond_b :goto_4 sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String; move-result-object p0 const-string v9, "APPN" invoke-virtual {v7, v9, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string p0, "APPVN" iget-object v9, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v10, "app_versionname" const/4 v11, 0x0 invoke-interface {v9, v10, v11}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v9 invoke-static {v9}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Ljava/lang/String;)Ljava/lang/String; move-result-object v9 invoke-virtual {v7, p0, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string p0, "APPVC" iget-object v9, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v10, "app_versioncode" invoke-interface {v9, v10, v8}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v9 invoke-virtual {v7, p0, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; const-string p0, "APPMETA" iget-object v9, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v10, "app_metadata" invoke-interface {v9, v10, v11}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v9 invoke-static {v9}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Ljava/lang/String;)Ljava/lang/String; move-result-object v9 invoke-virtual {v7, p0, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string p0, "TBSSDKV" const v9, 0xaa54 invoke-virtual {v7, p0, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; const-string p0, "TBSV" invoke-virtual {v7, p0, v5}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; const-string p0, "DOWNLOADDECOUPLECORE" invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; iget-object p0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v9, "tbs_downloaddecouplecore" invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object p2 invoke-interface {p0, v9, p2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V if-eqz v5, :cond_c const-string p0, "TBSBACKUPV" sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; invoke-virtual {p2}, Lcom/tencent/smtt/sdk/ag;->b()I move-result p2 invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; :cond_c const-string p0, "CPU" sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string p0, "UA" invoke-virtual {v7, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string p0, "IMSI" invoke-static {v2}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Ljava/lang/String;)Ljava/lang/String; move-result-object p2 invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string p0, "IMEI" invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Ljava/lang/String;)Ljava/lang/String; move-result-object p2 invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string p0, "ANDROID_ID" invoke-static {v4}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Ljava/lang/String;)Ljava/lang/String; move-result-object p2 invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result p0 if-nez p0, :cond_e if-eqz v5, :cond_d const-string p0, "STATUS" sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p2, v5}, Lcom/tencent/smtt/sdk/QbSdk;->a(Landroid/content/Context;I)Z move-result p2 xor-int/2addr p2, v6 invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; goto :goto_5 :cond_d const-string p0, "STATUS" invoke-virtual {v7, p0, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; :goto_5 const-string p0, "TBSDV" invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object p2 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {p2, v0}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result p2 invoke-virtual {v7, p0, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; :cond_e sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object p0 iget-object p0, p0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string p2, "request_full_package" invoke-interface {p0, p2, v8}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z move-result p0 sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const-string v0, "can_unlzma" invoke-static {p2, v0, v11}, Lcom/tencent/smtt/sdk/QbSdk;->a(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;)Ljava/lang/Object; move-result-object p2 if-eqz p2, :cond_f instance-of v0, p2, Ljava/lang/Boolean; if-eqz v0, :cond_f check-cast p2, Ljava/lang/Boolean; invoke-virtual {p2}, Ljava/lang/Boolean;->booleanValue()Z move-result p2 goto :goto_6 :cond_f const/4 p2, 0x0 :goto_6 if-eqz p2, :cond_10 xor-int/lit8 v8, p0, 0x1 :cond_10 if-eqz v8, :cond_11 const-string p0, "REQUEST_LZMA" invoke-virtual {v7, p0, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; :cond_11 sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result p0 if-eqz p0, :cond_12 const-string p0, "OVERSEA" invoke-virtual {v7, p0, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; :cond_12 if-eqz p1, :cond_13 const-string p0, "DOWNLOAD_FOREGROUND" invoke-virtual {v7, p0, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject; :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1 :catch_1 :cond_13 const-string p0, "TbsDownload" new-instance p1, Ljava/lang/StringBuilder; invoke-direct {p1}, Ljava/lang/StringBuilder;->()V const-string p2, "[TbsDownloader.postJsonData] jsonData=" invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v7}, Lorg/json/JSONObject;->toString()Ljava/lang/String; move-result-object p2 invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {p0, p1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V return-object v7 .end method .method static b(Landroid/content/Context;)V .locals 4 .annotation build Landroid/annotation/TargetApi; value = 0xb .end annotation invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->clear()V invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v0 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsLogReport;->d()V invoke-static {p0}, Lcom/tencent/smtt/sdk/ag;->c(Landroid/content/Context;)V sget v0, Landroid/os/Build$VERSION;->SDK_INT:I const/4 v1, 0x0 const/4 v2, 0x4 const/16 v3, 0xb if-lt v0, v3, :cond_0 const-string v0, "tbs_extension_config" invoke-virtual {p0, v0, v2}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; move-result-object v0 goto :goto_0 :cond_0 const-string v0, "tbs_extension_config" invoke-virtual {p0, v0, v1}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; move-result-object v0 :goto_0 invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor; move-result-object v0 invoke-interface {v0}, Landroid/content/SharedPreferences$Editor;->clear()Landroid/content/SharedPreferences$Editor; move-result-object v0 invoke-interface {v0}, Landroid/content/SharedPreferences$Editor;->commit()Z sget v0, Landroid/os/Build$VERSION;->SDK_INT:I if-lt v0, v3, :cond_1 const-string v0, "tbs_preloadx5_check_cfg_file" invoke-virtual {p0, v0, v2}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; move-result-object p0 goto :goto_1 :cond_1 const-string v0, "tbs_preloadx5_check_cfg_file" invoke-virtual {p0, v0, v1}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences; move-result-object p0 :goto_1 invoke-interface {p0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor; move-result-object p0 invoke-interface {p0}, Landroid/content/SharedPreferences$Editor;->clear()Landroid/content/SharedPreferences$Editor; move-result-object p0 invoke-interface {p0}, Landroid/content/SharedPreferences$Editor;->commit()Z return-void .end method .method private static b(ZZ)Z .locals 1 const/4 v0, 0x0 invoke-static {p0, p1, v0}, Lcom/tencent/smtt/sdk/TbsDownloader;->c(ZZZ)Z move-result p0 return p0 .end method .method private static c()Z .locals 6 const/4 v0, 0x0 :try_start_0 invoke-static {}, Lcom/tencent/smtt/sdk/TbsShareManager;->getCoreProviderAppList()[Ljava/lang/String; move-result-object v1 array-length v2, v1 const/4 v3, 0x0 :goto_0 if-ge v3, v2, :cond_1 aget-object v4, v1, v3 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5, v4}, Lcom/tencent/smtt/sdk/TbsShareManager;->getSharedTbsCoreVersion(Landroid/content/Context;Ljava/lang/String;)I move-result v4 :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 if-lez v4, :cond_0 const/4 v0, 0x1 return v0 :cond_0 add-int/lit8 v3, v3, 0x1 goto :goto_0 :catch_0 move-exception v1 invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V :cond_1 return v0 .end method .method private static c(ZZZ)Z .locals 9 const-string v0, "TbsDownload" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "[TbsDownloader.sendRequest]isQuery: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; const-string v2, " forDecoupleCore is " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v0 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v0, v1}, Lcom/tencent/smtt/sdk/am;->c(Landroid/content/Context;)Z move-result v0 const/4 v1, 0x0 if-eqz v0, :cond_0 const-string p0, "TbsDownload" const-string p1, "[TbsDownloader.sendRequest] -- isTbsLocalInstalled!" invoke-static {p0, p1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V return v1 :cond_0 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 new-instance v2, Ljava/io/File; sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v4, 0x1 invoke-static {v3, v4}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;I)Ljava/lang/String; move-result-object v3 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result v5 if-eqz v5, :cond_1 const-string v5, "x5.oversea.tbs.org" goto :goto_0 :cond_1 const-string v5, "x5.tbs.org" :goto_0 invoke-direct {v2, v3, v5}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V new-instance v3, Ljava/io/File; sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v6, 0x2 invoke-static {v5, v6}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;I)Ljava/lang/String; move-result-object v5 sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v6}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result v6 if-eqz v6, :cond_2 const-string v6, "x5.oversea.tbs.org" goto :goto_1 :cond_2 const-string v6, "x5.tbs.org" :goto_1 invoke-direct {v3, v5, v6}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V new-instance v5, Ljava/io/File; sget-object v6, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v7, 0x3 invoke-static {v6, v7}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;I)Ljava/lang/String; move-result-object v6 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v7}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result v7 if-eqz v7, :cond_3 const-string v7, "x5.oversea.tbs.org" goto :goto_2 :cond_3 const-string v7, "x5.tbs.org" :goto_2 invoke-direct {v5, v6, v7}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V new-instance v6, Ljava/io/File; sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v8, 0x4 invoke-static {v7, v8}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;I)Ljava/lang/String; move-result-object v7 sget-object v8, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v8}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result v8 if-eqz v8, :cond_4 const-string v8, "x5.oversea.tbs.org" goto :goto_3 :cond_4 const-string v8, "x5.tbs.org" :goto_3 invoke-direct {v6, v7, v8}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V invoke-virtual {v6}, Ljava/io/File;->exists()Z move-result v7 if-nez v7, :cond_7 invoke-virtual {v5}, Ljava/io/File;->exists()Z move-result v7 if-eqz v7, :cond_5 invoke-virtual {v5, v6}, Ljava/io/File;->renameTo(Ljava/io/File;)Z goto :goto_4 :cond_5 invoke-virtual {v3}, Ljava/io/File;->exists()Z move-result v5 if-eqz v5, :cond_6 invoke-virtual {v3, v6}, Ljava/io/File;->renameTo(Ljava/io/File;)Z goto :goto_4 :cond_6 invoke-virtual {v2}, Ljava/io/File;->exists()Z move-result v3 if-eqz v3, :cond_7 invoke-virtual {v2, v6}, Ljava/io/File;->renameTo(Ljava/io/File;)Z :cond_7 :goto_4 sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; if-nez v2, :cond_8 invoke-static {}, Lcom/tencent/smtt/utils/b;->a()Ljava/lang/String; move-result-object v2 sput-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; iget-object v2, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v3, "device_cpuabi" sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; invoke-interface {v2, v3, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V :cond_8 sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v2 if-nez v2, :cond_c const/4 v2, 0x0 :try_start_0 const-string v3, "i686|mips|x86_64" invoke-static {v3}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern; move-result-object v3 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; invoke-virtual {v3, v5}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; move-result-object v3 :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 move-object v2, v3 :catch_0 if-eqz v2, :cond_c invoke-virtual {v2}, Ljava/util/regex/Matcher;->find()Z move-result v2 if-eqz v2, :cond_c sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v2}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v2 const/16 v3, -0xcd const/16 v5, -0x68 if-eqz v2, :cond_a sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v2}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v2 invoke-virtual {v2}, Lcom/tencent/smtt/sdk/TbsLogReport;->a()Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo; move-result-object v2 if-eqz p0, :cond_9 invoke-virtual {v0, v5}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V invoke-virtual {v2, v5}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setErrorCode(I)V goto :goto_5 :cond_9 invoke-virtual {v0, v3}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V invoke-virtual {v2, v3}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setErrorCode(I)V :goto_5 new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v5, "mycpu is " invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->e:Ljava/lang/String; invoke-virtual {v3, v5}, 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-virtual {v2, v3}, Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;->setFailDetail(Ljava/lang/String;)V sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsLogReport; move-result-object v3 sget-object v5, Lcom/tencent/smtt/sdk/TbsLogReport$EventType;->TYPE_DOWNLOAD:Lcom/tencent/smtt/sdk/TbsLogReport$EventType; invoke-virtual {v3, v5, v2}, Lcom/tencent/smtt/sdk/TbsLogReport;->a(Lcom/tencent/smtt/sdk/TbsLogReport$EventType;Lcom/tencent/smtt/sdk/TbsLogReport$TbsLogInfo;)V goto :goto_6 :cond_a if-eqz p0, :cond_b invoke-virtual {v0, v5}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V goto :goto_6 :cond_b invoke-virtual {v0, v3}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V goto :goto_6 :cond_c const/4 v4, 0x0 :goto_6 invoke-static {p0, p1, p2}, Lcom/tencent/smtt/sdk/TbsDownloader;->b(ZZZ)Lorg/json/JSONObject; move-result-object p2 const/4 v2, -0x1 :try_start_1 const-string v3, "TBSV" invoke-virtual {p2, v3}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I move-result v3 :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1 goto :goto_7 :catch_1 const/4 v3, -0x1 :goto_7 if-nez v4, :cond_d if-eq v3, v2, :cond_e :cond_d invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v5 iget-object v7, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v8, "last_check" invoke-static {v5, v6}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v5 invoke-interface {v7, v8, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v5, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v6, "app_versionname" sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v7}, Lcom/tencent/smtt/utils/b;->a(Landroid/content/Context;)Ljava/lang/String; move-result-object v7 invoke-interface {v5, v6, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v5, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v6, "app_versioncode" sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v7}, Lcom/tencent/smtt/utils/b;->b(Landroid/content/Context;)I move-result v7 invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v7 invoke-interface {v5, v6, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iget-object v5, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v6, "app_metadata" sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const-string v8, "com.tencent.mm.BuildInfo.CLIENT_VERSION" invoke-static {v7, v8}, Lcom/tencent/smtt/utils/b;->a(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String; move-result-object v7 invoke-interface {v5, v6, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->commit()V if-eqz v4, :cond_e return v1 :cond_e if-eq v3, v2, :cond_10 :try_start_2 sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v2}, Lcom/tencent/smtt/utils/x;->a(Landroid/content/Context;)Lcom/tencent/smtt/utils/x; move-result-object v2 invoke-virtual {v2}, Lcom/tencent/smtt/utils/x;->d()Ljava/lang/String; move-result-object v2 const-string v4, "TbsDownload" new-instance v5, Ljava/lang/StringBuilder; invoke-direct {v5}, Ljava/lang/StringBuilder;->()V const-string v6, "[TbsDownloader.sendRequest] postUrl=" invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v5 invoke-static {v4, v5}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V invoke-virtual {p2}, Lorg/json/JSONObject;->toString()Ljava/lang/String; move-result-object p2 const-string v4, "utf-8" invoke-virtual {p2, v4}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B move-result-object p2 new-instance v4, Lcom/tencent/smtt/sdk/ak; invoke-direct {v4, p0, v0}, Lcom/tencent/smtt/sdk/ak;->(ZLcom/tencent/smtt/sdk/TbsDownloadConfig;)V invoke-static {v2, p2, v4, v1}, Lcom/tencent/smtt/utils/n;->a(Ljava/lang/String;[BLcom/tencent/smtt/utils/n$a;Z)Ljava/lang/String; move-result-object p2 invoke-static {p2, v3, p0, p1}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Ljava/lang/String;IZZ)Z move-result p1 :try_end_2 .catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_2} :catch_2 goto :goto_a :catch_2 move-exception p1 invoke-virtual {p1}, Ljava/lang/Throwable;->printStackTrace()V if-eqz p0, :cond_f const/16 p0, -0x6a :goto_8 invoke-virtual {v0, p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V goto :goto_9 :cond_f const/16 p0, -0xce goto :goto_8 :cond_10 :goto_9 const/4 p1, 0x0 :goto_a return p1 .end method .method private static declared-synchronized d()V .locals 3 const-class v0, Lcom/tencent/smtt/sdk/TbsDownloader; monitor-enter v0 :try_start_0 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->h:Landroid/os/HandlerThread; if-nez v1, :cond_0 invoke-static {}, Lcom/tencent/smtt/sdk/al;->a()Lcom/tencent/smtt/sdk/al; move-result-object v1 sput-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->h:Landroid/os/HandlerThread; :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 :try_start_1 new-instance v1, Lcom/tencent/smtt/sdk/ag; sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-direct {v1, v2}, Lcom/tencent/smtt/sdk/ag;->(Landroid/content/Context;)V sput-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 :try_start_2 new-instance v1, Lcom/tencent/smtt/sdk/aj; sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->h:Landroid/os/HandlerThread; invoke-virtual {v2}, Landroid/os/HandlerThread;->getLooper()Landroid/os/Looper; move-result-object v2 invoke-direct {v1, v2}, Lcom/tencent/smtt/sdk/aj;->(Landroid/os/Looper;)V sput-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; goto :goto_0 :catch_0 const/4 v1, 0x1 sput-boolean v1, Lcom/tencent/smtt/sdk/TbsDownloader;->i:Z const-string v1, "TbsDownload" const-string v2, "TbsApkDownloader init has Exception" invoke-static {v1, v2}, Lcom/tencent/smtt/utils/TbsLog;->e(Ljava/lang/String;Ljava/lang/String;)V :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 monitor-exit v0 return-void :cond_0 :goto_0 monitor-exit v0 return-void :catchall_0 move-exception v1 monitor-exit v0 throw v1 .end method .method private static e()Z .locals 4 :try_start_0 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->f()Lorg/json/JSONArray; move-result-object v0 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v1 iget-object v1, v1, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "last_thirdapp_sendrequest_coreversion" const-string v3, "" invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v1 invoke-virtual {v0}, Lorg/json/JSONArray;->toString()Ljava/lang/String; move-result-object v0 invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 return v0 :catch_0 const/4 v0, 0x0 return v0 .end method .method private static f()Lorg/json/JSONArray; .locals 10 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 if-eqz v0, :cond_f new-instance v0, Lorg/json/JSONArray; invoke-direct {v0}, Lorg/json/JSONArray;->()V invoke-static {}, Lcom/tencent/smtt/sdk/QbSdk;->getOnlyDownload()Z move-result v1 const/4 v2, 0x1 const/4 v3, 0x0 if-eqz v1, :cond_0 new-array v1, v2, [Ljava/lang/String; sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v4}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v4 invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String; move-result-object v4 aput-object v4, v1, v3 goto :goto_0 :cond_0 invoke-static {}, Lcom/tencent/smtt/sdk/TbsShareManager;->getCoreProviderAppList()[Ljava/lang/String; move-result-object v1 sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v4}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v4 invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String; move-result-object v4 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5}, Lcom/tencent/smtt/sdk/TbsShareManager;->f(Landroid/content/Context;)Ljava/lang/String; move-result-object v5 invoke-virtual {v4, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v5 if-eqz v5, :cond_1 array-length v5, v1 add-int/lit8 v6, v5, 0x1 new-array v6, v6, [Ljava/lang/String; invoke-static {v1, v3, v6, v3, v5}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V aput-object v4, v6, v5 move-object v1, v6 :cond_1 :goto_0 array-length v4, v1 const/4 v5, 0x0 :goto_1 if-ge v5, v4, :cond_6 aget-object v6, v1, v5 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v7, v6}, Lcom/tencent/smtt/sdk/TbsShareManager;->getSharedTbsCoreVersion(Landroid/content/Context;Ljava/lang/String;)I move-result v7 if-lez v7, :cond_5 sget-object v8, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v8, v6}, Lcom/tencent/smtt/sdk/TbsShareManager;->a(Landroid/content/Context;Ljava/lang/String;)Landroid/content/Context; move-result-object v8 if-eqz v8, :cond_2 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v9 invoke-virtual {v9, v8}, Lcom/tencent/smtt/sdk/am;->f(Landroid/content/Context;)Z move-result v8 if-nez v8, :cond_2 const-string v7, "TbsDownload" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "host check failed,packageName = " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v8, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v6 invoke-static {v7, v6}, Lcom/tencent/smtt/utils/TbsLog;->e(Ljava/lang/String;Ljava/lang/String;)V goto :goto_4 :cond_2 const/4 v6, 0x0 :goto_2 invoke-virtual {v0}, Lorg/json/JSONArray;->length()I move-result v8 if-ge v6, v8, :cond_4 invoke-virtual {v0, v6}, Lorg/json/JSONArray;->optInt(I)I move-result v8 if-ne v8, v7, :cond_3 const/4 v6, 0x1 goto :goto_3 :cond_3 add-int/lit8 v6, v6, 0x1 goto :goto_2 :cond_4 const/4 v6, 0x0 :goto_3 if-nez v6, :cond_5 invoke-virtual {v0, v7}, Lorg/json/JSONArray;->put(I)Lorg/json/JSONArray; :cond_5 :goto_4 add-int/lit8 v5, v5, 0x1 goto :goto_1 :cond_6 array-length v4, v1 const/4 v5, 0x0 :goto_5 if-ge v5, v4, :cond_b aget-object v6, v1, v5 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v7, v6}, Lcom/tencent/smtt/sdk/TbsShareManager;->getCoreShareDecoupleCoreVersion(Landroid/content/Context;Ljava/lang/String;)I move-result v7 if-lez v7, :cond_a sget-object v8, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v8, v6}, Lcom/tencent/smtt/sdk/TbsShareManager;->a(Landroid/content/Context;Ljava/lang/String;)Landroid/content/Context; move-result-object v8 if-eqz v8, :cond_7 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v9 invoke-virtual {v9, v8}, Lcom/tencent/smtt/sdk/am;->f(Landroid/content/Context;)Z move-result v8 if-nez v8, :cond_7 const-string v7, "TbsDownload" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "host check failed,packageName = " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v8, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v6 invoke-static {v7, v6}, Lcom/tencent/smtt/utils/TbsLog;->e(Ljava/lang/String;Ljava/lang/String;)V goto :goto_8 :cond_7 const/4 v6, 0x0 :goto_6 invoke-virtual {v0}, Lorg/json/JSONArray;->length()I move-result v8 if-ge v6, v8, :cond_9 invoke-virtual {v0, v6}, Lorg/json/JSONArray;->optInt(I)I move-result v8 if-ne v8, v7, :cond_8 const/4 v6, 0x1 goto :goto_7 :cond_8 add-int/lit8 v6, v6, 0x1 goto :goto_6 :cond_9 const/4 v6, 0x0 :goto_7 if-nez v6, :cond_a invoke-virtual {v0, v7}, Lorg/json/JSONArray;->put(I)Lorg/json/JSONArray; :cond_a :goto_8 add-int/lit8 v5, v5, 0x1 goto :goto_5 :cond_b invoke-static {}, Lcom/tencent/smtt/sdk/TbsShareManager;->getHostCorePathAppDefined()Ljava/lang/String; move-result-object v1 if-eqz v1, :cond_e invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v1 invoke-static {}, Lcom/tencent/smtt/sdk/TbsShareManager;->getHostCorePathAppDefined()Ljava/lang/String; move-result-object v4 invoke-virtual {v1, v4}, Lcom/tencent/smtt/sdk/am;->a(Ljava/lang/String;)I move-result v1 const/4 v4, 0x0 :goto_9 invoke-virtual {v0}, Lorg/json/JSONArray;->length()I move-result v5 if-ge v4, v5, :cond_d invoke-virtual {v0, v4}, Lorg/json/JSONArray;->optInt(I)I move-result v5 if-ne v5, v1, :cond_c goto :goto_a :cond_c add-int/lit8 v4, v4, 0x1 goto :goto_9 :cond_d const/4 v2, 0x0 :goto_a if-nez v2, :cond_e invoke-virtual {v0, v1}, Lorg/json/JSONArray;->put(I)Lorg/json/JSONArray; :cond_e return-object v0 :cond_f const/4 v0, 0x0 return-object v0 .end method .method private static g()Z .locals 10 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v1, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_download_success_retrytimes" const/4 v3, 0x0 invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v1 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getDownloadSuccessMaxRetrytimes()I move-result v2 const/4 v4, 0x1 if-lt v1, v2, :cond_0 const-string v1, "TbsDownload" const-string v2, "[TbsDownloader.needStartDownload] out of success retrytimes" invoke-static {v1, v2, v4}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;Z)V const/16 v1, -0x73 :goto_0 invoke-virtual {v0, v1}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V return v3 :cond_0 iget-object v1, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_download_failed_retrytimes" invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v1 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getDownloadFailedMaxRetrytimes()I move-result v2 if-lt v1, v2, :cond_1 const-string v1, "TbsDownload" const-string v2, "[TbsDownloader.needStartDownload] out of failed retrytimes" invoke-static {v1, v2, v4}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;Z)V const/16 v1, -0x74 goto :goto_0 :cond_1 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v1}, Lcom/tencent/smtt/utils/k;->b(Landroid/content/Context;)Z move-result v1 if-nez v1, :cond_2 const-string v1, "TbsDownload" const-string v2, "[TbsDownloader.needStartDownload] local rom freespace limit" invoke-static {v1, v2, v4}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;Z)V const/16 v1, -0x75 goto :goto_0 :cond_2 invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v1 iget-object v5, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v6, "tbs_downloadstarttime" const-wide/16 v7, 0x0 invoke-interface {v5, v6, v7, v8}, Landroid/content/SharedPreferences;->getLong(Ljava/lang/String;J)J move-result-wide v5 sub-long/2addr v1, v5 const-wide/32 v5, 0x5265c00 cmp-long v9, v1, v5 if-gtz v9, :cond_3 iget-object v1, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_downloadflow" invoke-interface {v1, v2, v7, v8}, Landroid/content/SharedPreferences;->getLong(Ljava/lang/String;J)J move-result-wide v1 const-string v5, "TbsDownload" new-instance v6, Ljava/lang/StringBuilder; invoke-direct {v6}, Ljava/lang/StringBuilder;->()V const-string v7, "[TbsDownloader.needStartDownload] downloadFlow=" invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v6, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v6 invoke-static {v5, v6}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getDownloadMaxflow()J move-result-wide v5 cmp-long v7, v1, v5 if-ltz v7, :cond_3 const-string v1, "TbsDownload" const-string v2, "[TbsDownloader.needStartDownload] failed because you exceeded max flow!" invoke-static {v1, v2, v4}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;Z)V const/16 v1, -0x78 goto :goto_0 :cond_3 return v4 .end method .method public static getCoreShareDecoupleCoreVersion()I .locals 2 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v0 sget-object v1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v0, v1}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result v0 return v0 .end method .method public static getCoreShareDecoupleCoreVersionByContext(Landroid/content/Context;)I .locals 1 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v0 invoke-virtual {v0, p0}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result p0 return p0 .end method .method public static declared-synchronized getOverSea(Landroid/content/Context;)Z .locals 3 const-class v0, Lcom/tencent/smtt/sdk/TbsDownloader; monitor-enter v0 :try_start_0 sget-boolean v1, Lcom/tencent/smtt/sdk/TbsDownloader;->k:Z if-nez v1, :cond_1 const/4 v1, 0x1 sput-boolean v1, Lcom/tencent/smtt/sdk/TbsDownloader;->k:Z invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object p0 iget-object v1, p0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "is_oversea" invoke-interface {v1, v2}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z move-result v1 if-eqz v1, :cond_0 iget-object p0, p0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v1, "is_oversea" const/4 v2, 0x0 invoke-interface {p0, v1, v2}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z move-result p0 sput-boolean p0, Lcom/tencent/smtt/sdk/TbsDownloader;->j:Z const-string p0, "TbsDownload" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "[TbsDownloader.getOverSea] first called. sOverSea = " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-boolean v2, Lcom/tencent/smtt/sdk/TbsDownloader;->j:Z invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {p0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V :cond_0 const-string p0, "TbsDownload" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "[TbsDownloader.getOverSea] sOverSea = " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-boolean v2, Lcom/tencent/smtt/sdk/TbsDownloader;->j:Z invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {p0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V :cond_1 sget-boolean p0, Lcom/tencent/smtt/sdk/TbsDownloader;->j:Z :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 monitor-exit v0 return p0 :catchall_0 move-exception p0 monitor-exit v0 throw p0 .end method .method public static getRetryIntervalInSeconds()J .locals 2 sget-wide v0, Lcom/tencent/smtt/sdk/TbsDownloader;->l:J return-wide v0 .end method .method public static getsTbsHandlerThread()Landroid/os/HandlerThread; .locals 1 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->h:Landroid/os/HandlerThread; return-object v0 .end method .method private static h()Lorg/json/JSONArray; .locals 11 new-instance v0, Lorg/json/JSONArray; invoke-direct {v0}, Lorg/json/JSONArray;->()V invoke-static {}, Lcom/tencent/smtt/sdk/TbsShareManager;->getCoreProviderAppList()[Ljava/lang/String; move-result-object v1 array-length v2, v1 const/4 v3, 0x0 const/4 v4, 0x0 :goto_0 if-ge v4, v2, :cond_4 aget-object v5, v1, v4 new-instance v6, Ljava/io/File; sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v8, 0x4 invoke-static {v7, v5, v8, v3}, Lcom/tencent/smtt/utils/k;->a(Landroid/content/Context;Ljava/lang/String;IZ)Ljava/lang/String; move-result-object v5 sget-object v7, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v7}, Lcom/tencent/smtt/sdk/TbsDownloader;->getOverSea(Landroid/content/Context;)Z move-result v7 if-eqz v7, :cond_0 const-string v7, "x5.oversea.tbs.org" goto :goto_1 :cond_0 const-string v7, "x5.tbs.org" :goto_1 invoke-direct {v6, v5, v7}, Ljava/io/File;->(Ljava/lang/String;Ljava/lang/String;)V invoke-virtual {v6}, Ljava/io/File;->exists()Z move-result v5 if-eqz v5, :cond_3 sget-object v5, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v5, v6}, Lcom/tencent/smtt/utils/a;->a(Landroid/content/Context;Ljava/io/File;)I move-result v5 int-to-long v5, v5 const-wide/16 v7, 0x0 cmp-long v9, v5, v7 if-lez v9, :cond_3 const/4 v7, 0x0 :goto_2 invoke-virtual {v0}, Lorg/json/JSONArray;->length()I move-result v8 if-ge v7, v8, :cond_2 invoke-virtual {v0, v7}, Lorg/json/JSONArray;->optInt(I)I move-result v8 int-to-long v8, v8 cmp-long v10, v8, v5 if-nez v10, :cond_1 const/4 v7, 0x1 goto :goto_3 :cond_1 add-int/lit8 v7, v7, 0x1 goto :goto_2 :cond_2 const/4 v7, 0x0 :goto_3 if-nez v7, :cond_3 invoke-virtual {v0, v5, v6}, Lorg/json/JSONArray;->put(J)Lorg/json/JSONArray; :cond_3 add-int/lit8 v4, v4, 0x1 goto :goto_0 :cond_4 return-object v0 .end method .method public static isDownloadForeground()Z .locals 1 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; if-eqz v0, :cond_0 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; invoke-virtual {v0}, Lcom/tencent/smtt/sdk/ag;->e()Z move-result v0 if-eqz v0, :cond_0 const/4 v0, 0x1 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return v0 .end method .method public static declared-synchronized isDownloading()Z .locals 4 const-class v0, Lcom/tencent/smtt/sdk/TbsDownloader; monitor-enter v0 :try_start_0 const-string v1, "TbsDownload" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "[TbsDownloader.isDownloading] is " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-boolean v3, Lcom/tencent/smtt/sdk/TbsDownloader;->a:Z invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-boolean v1, Lcom/tencent/smtt/sdk/TbsDownloader;->a:Z :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 monitor-exit v0 return v1 :catchall_0 move-exception v1 monitor-exit v0 throw v1 .end method .method public static needDownload(Landroid/content/Context;Z)Z .locals 2 const/4 v0, 0x0 const/4 v1, 0x0 invoke-static {p0, p1, v0, v1}, Lcom/tencent/smtt/sdk/TbsDownloader;->needDownload(Landroid/content/Context;ZZLcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;)Z move-result p0 return p0 .end method .method public static needDownload(Landroid/content/Context;ZZLcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;)Z .locals 6 invoke-static {p0}, Lcom/tencent/smtt/utils/TbsLog;->initIfNeed(Landroid/content/Context;)V sget-boolean v0, Lcom/tencent/smtt/sdk/am;->b:Z const/4 v1, 0x0 if-eqz v0, :cond_1 if-eqz p3, :cond_0 invoke-interface {p3, v1, v1}, Lcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;->onNeedDownloadFinish(ZI)V :cond_0 return v1 :cond_1 const-string v0, "TbsDownload" invoke-static {v0, p0}, Lcom/tencent/smtt/utils/TbsLog;->app_extra(Ljava/lang/String;Landroid/content/Context;)V invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v0 sput-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 const/16 v2, -0x64 invoke-virtual {v0, v2}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v2, p1, p3}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Landroid/content/Context;ZLcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;)Z move-result p1 if-nez p1, :cond_2 return v1 :cond_2 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->d()V sget-boolean p1, Lcom/tencent/smtt/sdk/TbsDownloader;->i:Z if-eqz p1, :cond_4 if-eqz p3, :cond_3 invoke-interface {p3, v1, v1}, Lcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;->onNeedDownloadFinish(ZI)V :cond_3 const/16 p0, -0x69 invoke-virtual {v0, p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V return v1 :cond_4 sget-object p1, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p1, p2, v1}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Landroid/content/Context;ZZ)Z move-result p1 if-eqz p1, :cond_5 invoke-static {p2, p3}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(ZLcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;)V const/16 p2, -0x72 invoke-virtual {v0, p2}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V :cond_5 sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v2, 0x66 invoke-virtual {p2, v2}, Landroid/os/Handler;->removeMessages(I)V sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; invoke-static {p2, v2}, Landroid/os/Message;->obtain(Landroid/os/Handler;I)Landroid/os/Message; move-result-object p2 invoke-virtual {p2}, Landroid/os/Message;->sendToTarget()V sget-boolean p2, Lcom/tencent/smtt/sdk/QbSdk;->c:Z const/4 v2, 0x1 if-nez p2, :cond_7 invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result p2 if-nez p2, :cond_6 goto :goto_0 :cond_6 const/4 p0, 0x0 goto :goto_1 :cond_7 :goto_0 iget-object p2, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "tbs_needdownload" invoke-interface {p2, v3}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z move-result p2 const-string v3, "TbsDownload" new-instance v4, Ljava/lang/StringBuilder; invoke-direct {v4}, Ljava/lang/StringBuilder;->()V const-string v5, "[TbsDownloader.needDownload] hasNeedDownloadKey=" invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 invoke-static {v3, v4}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-nez p2, :cond_8 invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result p0 if-nez p0, :cond_8 const/4 p0, 0x1 goto :goto_1 :cond_8 iget-object p0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string p2, "tbs_needdownload" invoke-interface {p0, p2, v1}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z move-result p0 :goto_1 if-eqz p0, :cond_a invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->g()Z move-result p2 if-nez p2, :cond_9 const/4 p0, 0x0 goto :goto_5 :cond_9 const/16 p2, -0x76 :goto_2 invoke-virtual {v0, p2}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V goto :goto_5 :cond_a invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object p2 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {p2, v3}, Lcom/tencent/smtt/sdk/am;->k(Landroid/content/Context;)I move-result p2 if-nez p1, :cond_c if-gtz p2, :cond_b goto :goto_3 :cond_b const/16 p2, -0x77 goto :goto_2 :cond_c :goto_3 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v4, 0x67 invoke-virtual {v3, v4}, Landroid/os/Handler;->removeMessages(I)V if-gtz p2, :cond_d if-nez p1, :cond_d sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; sget-object v2, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p2, v4, v1, v1, v2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message; move-result-object p2 goto :goto_4 :cond_d sget-object p2, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p2, v4, v2, v1, v3}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message; move-result-object p2 :goto_4 invoke-virtual {p2}, Landroid/os/Message;->sendToTarget()V const/16 p2, -0x79 goto :goto_2 :goto_5 if-nez p1, :cond_e if-eqz p3, :cond_e invoke-interface {p3, v1, v1}, Lcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;->onNeedDownloadFinish(ZI)V :cond_e const-string p1, "TbsDownload" new-instance p2, Ljava/lang/StringBuilder; invoke-direct {p2}, Ljava/lang/StringBuilder;->()V const-string p3, "[TbsDownloader.needDownload] needDownload=" invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p2, p0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-static {p1, p2}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V return p0 .end method .method public static needDownloadDecoupleCore()Z .locals 9 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 const/4 v1, 0x0 if-eqz v0, :cond_0 return v1 :cond_0 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_downloaddecouplecore" invoke-interface {v0, v2, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 const/4 v2, 0x1 if-ne v0, v2, :cond_1 return v1 :cond_1 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "last_download_decouple_core" const-wide/16 v4, 0x0 invoke-interface {v0, v3, v4, v5}, Landroid/content/SharedPreferences;->getLong(Ljava/lang/String;J)J move-result-wide v3 invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v5 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getRetryInterval()J move-result-wide v7 sub-long/2addr v5, v3 const-wide/16 v3, 0x3e8 mul-long v7, v7, v3 cmp-long v0, v5, v7 if-gez v0, :cond_2 return v1 :cond_2 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "tbs_decouplecoreversion" invoke-interface {v0, v3, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 if-lez v0, :cond_3 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v4}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result v3 if-eq v0, v3, :cond_3 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v3 iget-object v3, v3, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v4, "tbs_download_version" invoke-interface {v3, v4, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v3 if-eq v3, v0, :cond_3 return v2 :cond_3 return v1 .end method .method public static needSendRequest(Landroid/content/Context;Z)Z .locals 5 invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v0 sput-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/utils/TbsLog;->initIfNeed(Landroid/content/Context;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 v1, 0x0 invoke-static {v0, p1, v1}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Landroid/content/Context;ZLcom/tencent/smtt/sdk/TbsDownloader$TbsDownloaderCallback;)Z move-result p1 const/4 v0, 0x0 if-nez p1, :cond_0 return v0 :cond_0 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object p1 invoke-virtual {p1, p0}, Lcom/tencent/smtt/sdk/am;->k(Landroid/content/Context;)I move-result p0 const-string p1, "TbsDownload" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "[TbsDownloader.needSendRequest] localTbsVersion=" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {p1, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-lez p0, :cond_1 return v0 :cond_1 sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; const/4 p1, 0x1 invoke-static {p0, v0, p1}, Lcom/tencent/smtt/sdk/TbsDownloader;->a(Landroid/content/Context;ZZ)Z move-result p0 if-eqz p0, :cond_2 return p1 :cond_2 sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object p0 iget-object v1, p0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_needdownload" invoke-interface {v1, v2}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z move-result v1 const-string v2, "TbsDownload" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "[TbsDownloader.needSendRequest] hasNeedDownloadKey=" invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-static {v2, v3}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-nez v1, :cond_3 const/4 p0, 0x1 goto :goto_0 :cond_3 iget-object p0, p0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v1, "tbs_needdownload" invoke-interface {p0, v1, v0}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z move-result p0 :goto_0 const-string v1, "TbsDownload" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "[TbsDownloader.needSendRequest] needDownload=" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V if-eqz p0, :cond_4 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->g()Z move-result p0 if-eqz p0, :cond_4 goto :goto_1 :cond_4 const/4 p1, 0x0 :goto_1 const-string p0, "TbsDownload" new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "[TbsDownloader.needSendRequest] ret=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {p0, v0}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V return p1 .end method .method public static setRetryIntervalInSeconds(Landroid/content/Context;J)V .locals 2 if-nez p0, :cond_0 return-void :cond_0 invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo; move-result-object p0 iget-object p0, p0, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String; const-string v0, "com.tencent.qqlive" invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result p0 if-eqz p0, :cond_1 sput-wide p1, Lcom/tencent/smtt/sdk/TbsDownloader;->l:J :cond_1 const-string p0, "TbsDownload" new-instance p1, Ljava/lang/StringBuilder; invoke-direct {p1}, Ljava/lang/StringBuilder;->()V const-string p2, "mRetryIntervalInSeconds is " invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-wide v0, Lcom/tencent/smtt/sdk/TbsDownloader;->l:J invoke-virtual {p1, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {p0, p1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V return-void .end method .method public static startDecoupleCoreIfNeeded()Z .locals 9 const-string v0, "TbsDownload" const-string v1, "startDecoupleCoreIfNeeded " invoke-static {v0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsShareManager;->isThirdPartyApp(Landroid/content/Context;)Z move-result v0 const/4 v1, 0x0 if-eqz v0, :cond_0 return v1 :cond_0 const-string v0, "TbsDownload" const-string v2, "startDecoupleCoreIfNeeded #1" invoke-static {v0, v2}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v2, "tbs_downloaddecouplecore" invoke-interface {v0, v2, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 const/4 v2, 0x1 if-ne v0, v2, :cond_1 return v1 :cond_1 const-string v0, "TbsDownload" const-string v3, "startDecoupleCoreIfNeeded #2" invoke-static {v0, v3}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "last_download_decouple_core" const-wide/16 v4, 0x0 invoke-interface {v0, v3, v4, v5}, Landroid/content/SharedPreferences;->getLong(Ljava/lang/String;J)J move-result-wide v3 invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v5 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 invoke-virtual {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getRetryInterval()J move-result-wide v7 sub-long/2addr v5, v3 const-wide/16 v3, 0x3e8 mul-long v7, v7, v3 cmp-long v0, v5, v7 if-gez v0, :cond_2 return v1 :cond_2 const-string v0, "TbsDownload" const-string v3, "startDecoupleCoreIfNeeded #3" invoke-static {v0, v3}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v3, "tbs_decouplecoreversion" invoke-interface {v0, v3, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 if-lez v0, :cond_5 invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v3 sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v3, v4}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result v3 if-eq v0, v3, :cond_5 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v3 iget-object v3, v3, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v4, "tbs_download_version" invoke-interface {v3, v4, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v3 if-ne v3, v0, :cond_4 sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v3}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v3 iget-object v3, v3, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v4, "tbs_download_version_type" invoke-interface {v3, v4, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v3 if-ne v3, v2, :cond_3 goto :goto_0 :cond_3 const-string v2, "TbsDownload" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "startDecoupleCoreIfNeeded no need, KEY_TBS_DOWNLOAD_V is " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v4}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v4 iget-object v4, v4, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v5, "tbs_download_version" invoke-interface {v4, v5, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v4 invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v4, " deCoupleCoreVersion is " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v0, " KEY_TBS_DOWNLOAD_V_TYPE is " invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->mPreferences:Landroid/content/SharedPreferences; const-string v4, "tbs_download_version_type" invoke-interface {v0, v4, v1}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I move-result v0 goto :goto_1 :cond_4 :goto_0 const-string v0, "TbsDownload" const-string v3, "startDecoupleCoreIfNeeded #4" invoke-static {v0, v3}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sput-boolean v2, Lcom/tencent/smtt/sdk/TbsDownloader;->a:Z sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v3, 0x6c invoke-virtual {v0, v3}, Landroid/os/Handler;->removeMessages(I)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; sget-object v4, Lcom/tencent/smtt/sdk/QbSdk;->l:Lcom/tencent/smtt/sdk/TbsListener; invoke-static {v0, v3, v4}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message; move-result-object v0 iput v1, v0, Landroid/os/Message;->arg1:I invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {v0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object v0 iget-object v0, v0, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->a:Ljava/util/Map; const-string v1, "last_download_decouple_core" invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v3 invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v3 invoke-interface {v0, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; return v2 :cond_5 const-string v2, "TbsDownload" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "startDecoupleCoreIfNeeded no need, deCoupleCoreVersion is " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v0, " getTbsCoreShareDecoupleCoreVersion is " invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-static {}, Lcom/tencent/smtt/sdk/am;->a()Lcom/tencent/smtt/sdk/am; move-result-object v0 sget-object v4, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-virtual {v0, v4}, Lcom/tencent/smtt/sdk/am;->h(Landroid/content/Context;)I move-result v0 :goto_1 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v2, v0}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V return v1 .end method .method public static startDownload(Landroid/content/Context;)V .locals 1 const/4 v0, 0x0 invoke-static {p0, v0}, Lcom/tencent/smtt/sdk/TbsDownloader;->startDownload(Landroid/content/Context;Z)V return-void .end method .method public static declared-synchronized startDownload(Landroid/content/Context;Z)V .locals 4 const-class v0, Lcom/tencent/smtt/sdk/TbsDownloader; monitor-enter v0 :try_start_0 const-string v1, "TbsDownload" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "[TbsDownloader.startDownload] sAppContext=" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v3, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; 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}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-boolean v1, Lcom/tencent/smtt/sdk/am;->b:Z :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz v1, :cond_0 monitor-exit v0 return-void :cond_0 const/4 v1, 0x1 :try_start_1 sput-boolean v1, Lcom/tencent/smtt/sdk/TbsDownloader;->a:Z invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object p0 sput-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object p0 const/16 v1, -0xc8 invoke-virtual {p0, v1}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V sget p0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v1, 0x8 if-ge p0, v1, :cond_1 sget-object p0, Lcom/tencent/smtt/sdk/QbSdk;->l:Lcom/tencent/smtt/sdk/TbsListener; const/16 p1, 0x6e invoke-interface {p0, p1}, Lcom/tencent/smtt/sdk/TbsListener;->onDownloadFinish(I)V sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object p0 const/16 p1, -0xc9 invoke-virtual {p0, p1}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 monitor-exit v0 return-void :cond_1 :try_start_2 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->d()V sget-boolean p0, Lcom/tencent/smtt/sdk/TbsDownloader;->i:Z if-eqz p0, :cond_2 sget-object p0, Lcom/tencent/smtt/sdk/QbSdk;->l:Lcom/tencent/smtt/sdk/TbsListener; const/16 p1, 0x79 invoke-interface {p0, p1}, Lcom/tencent/smtt/sdk/TbsListener;->onDownloadFinish(I)V sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->c:Landroid/content/Context; invoke-static {p0}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->getInstance(Landroid/content/Context;)Lcom/tencent/smtt/sdk/TbsDownloadConfig; move-result-object p0 const/16 p1, -0xca invoke-virtual {p0, p1}, Lcom/tencent/smtt/sdk/TbsDownloadConfig;->setDownloadInterruptCode(I)V :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 monitor-exit v0 return-void :cond_2 if-eqz p1, :cond_3 :try_start_3 invoke-static {}, Lcom/tencent/smtt/sdk/TbsDownloader;->stopDownload()V :cond_3 sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v1, 0x65 invoke-virtual {p0, v1}, Landroid/os/Handler;->removeMessages(I)V sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v2, 0x64 invoke-virtual {p0, v2}, Landroid/os/Handler;->removeMessages(I)V sget-object p0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; sget-object v2, Lcom/tencent/smtt/sdk/QbSdk;->l:Lcom/tencent/smtt/sdk/TbsListener; invoke-static {p0, v1, v2}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message; move-result-object p0 iput p1, p0, Landroid/os/Message;->arg1:I invoke-virtual {p0}, Landroid/os/Message;->sendToTarget()V :try_end_3 .catchall {:try_start_3 .. :try_end_3} :catchall_0 monitor-exit v0 return-void :catchall_0 move-exception p0 monitor-exit v0 throw p0 .end method .method public static stopDownload()V .locals 2 sget-boolean v0, Lcom/tencent/smtt/sdk/TbsDownloader;->i:Z if-eqz v0, :cond_0 return-void :cond_0 const-string v0, "TbsDownload" const-string v1, "[TbsDownloader.stopDownload]" invoke-static {v0, v1}, Lcom/tencent/smtt/utils/TbsLog;->i(Ljava/lang/String;Ljava/lang/String;)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; if-eqz v0, :cond_1 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->g:Lcom/tencent/smtt/sdk/ag; invoke-virtual {v0}, Lcom/tencent/smtt/sdk/ag;->c()V :cond_1 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; if-eqz v0, :cond_2 sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v1, 0x64 invoke-virtual {v0, v1}, Landroid/os/Handler;->removeMessages(I)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v1, 0x65 invoke-virtual {v0, v1}, Landroid/os/Handler;->removeMessages(I)V sget-object v0, Lcom/tencent/smtt/sdk/TbsDownloader;->d:Landroid/os/Handler; const/16 v1, 0x6c invoke-virtual {v0, v1}, Landroid/os/Handler;->removeMessages(I)V :cond_2 return-void .end method