SdkDetailsHelper.smali
.class public Lcom/taboola/android/utils/SdkDetailsHelper;
.super Ljava/lang/Object;
.source "SdkDetailsHelper.java"
# static fields
.field private static final ANDROID:Ljava/lang/String; = "Android"
.field private static final APP_ID:Ljava/lang/String; = "appid"
.field private static final APP_NAME:Ljava/lang/String; = "app"
.field private static final APP_VERSION:Ljava/lang/String; = "appv"
.field private static final DEVICE_MODEL:Ljava/lang/String; = "model"
.field private static final DISPLAY_LANGUAGE:Ljava/lang/String; = "dsplng"
.field private static final HEIGHT:Ljava/lang/String; = "ht"
.field private static final IS_ANDROIDX:Ljava/lang/String; = "androidx"
.field private static final IS_KOTLIN:Ljava/lang/String; = "kotlin"
.field private static final KEYBOARD_LANGUAGES:Ljava/lang/String; = "kbd"
.field private static final LANGUAGES_ROOT:Ljava/lang/String; = "lng"
.field private static final LAT:Ljava/lang/String; = "lat"
.field private static final LOCALE_LANGUAGE:Ljava/lang/String; = "locale"
.field private static final LOCATION:Ljava/lang/String; = "loc"
.field private static final LON:Ljava/lang/String; = "lng"
.field private static final MAIN_LANGUAGE:Ljava/lang/String; = "main"
.field private static final MEDIATED_VIA:Ljava/lang/String; = "mdtd"
.field private static final NETWORK_LANGUAGE:Ljava/lang/String; = "netw"
.field private static final NETWORK_TYPE:Ljava/lang/String; = "net"
.field private static final NT_2G:Ljava/lang/String; = "2g"
.field private static final NT_3G:Ljava/lang/String; = "3g"
.field private static final NT_4G:Ljava/lang/String; = "4g"
.field private static final NT_WIFI:Ljava/lang/String; = "wifi"
.field private static final OS:Ljava/lang/String; = "os"
.field private static final OS_VERSION:Ljava/lang/String; = "osv"
.field private static final ROOT_KEY:Ljava/lang/String; = "additional_data"
.field private static final SCREEN_SIZE:Ljava/lang/String; = "scr"
.field private static final SDK_DATA:Ljava/lang/String; = "sdkd"
.field private static final SDK_TYPE:Ljava/lang/String; = "sdkt"
.field public static final SDK_TYPE_API:Ljava/lang/String; = "Taboola Android SDK - API"
.field public static final SDK_TYPE_JS:Ljava/lang/String; = "Taboola Android SDK - JS"
.field public static final SDK_TYPE_WIDGET:Ljava/lang/String; = "Taboola Android SDK"
.field private static final SDK_VERSION:Ljava/lang/String; = "sdkv"
.field private static final SIM_LANGUAGE:Ljava/lang/String; = "sim"
.field private static final TAG:Ljava/lang/String;
.field private static final TOTAL_MEMORY:Ljava/lang/String; = "mem"
.field public static final UNDEFINED:Ljava/lang/String; = "undefined"
.field private static final WIDTH:Ljava/lang/String; = "wd"
.field private static sApplicationName:Ljava/lang/String;
.field private static sForcedSimCountryCode:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 58
const-class v0, Lcom/taboola/android/utils/SdkDetailsHelper;
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const/4 v0, 0x0
.line 102
sput-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->sForcedSimCountryCode:Ljava/lang/String;
return-void
.end method
.method private constructor <init>()V
.registers 1
.line 106
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static addLocation(Landroid/content/Context;Lorg/json/JSONObject;)V
.registers 8
.line 219
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
const-string v0, "location"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/location/LocationManager;
if-eqz p0, :cond_74
const/4 v0, 0x0
const/4 v1, 0x1
.line 223
invoke-virtual {p0, v1}, Landroid/location/LocationManager;->getProviders(Z)Ljava/util/List;
move-result-object v1
if-eqz v1, :cond_3d
.line 225
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_1a
:goto_1a
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_3d
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
.line 226
invoke-virtual {p0, v2}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
move-result-object v2
if-nez v2, :cond_2d
goto :goto_1a
:cond_2d
if-eqz v0, :cond_3b
.line 230
invoke-virtual {v2}, Landroid/location/Location;->getAccuracy()F
move-result v3
invoke-virtual {v0}, Landroid/location/Location;->getAccuracy()F
move-result v4
cmpg-float v3, v3, v4
if-gez v3, :cond_1a
:cond_3b
move-object v0, v2
goto :goto_1a
:cond_3d
if-eqz v0, :cond_6c
.line 238
invoke-virtual {v0}, Landroid/location/Location;->getLatitude()D
move-result-wide v1
.line 239
invoke-virtual {v0}, Landroid/location/Location;->getLongitude()D
move-result-wide v3
.line 240
new-instance p0, Lorg/json/JSONObject;
invoke-direct {p0}, Lorg/json/JSONObject;-><init>()V
const-string v0, "lat"
const/4 v5, 0x2
.line 241
invoke-static {v1, v2, v5}, Lcom/taboola/android/utils/NumberUtils;->formatDouble(DI)D
move-result-wide v1
invoke-virtual {p0, v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;D)Lorg/json/JSONObject;
const-string v0, "lng"
.line 242
invoke-static {v3, v4, v5}, Lcom/taboola/android/utils/NumberUtils;->formatDouble(DI)D
move-result-wide v1
invoke-virtual {p0, v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;D)Lorg/json/JSONObject;
const-string v0, "loc"
.line 243
invoke-virtual {p1, v0, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 244
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string p1, "location is available"
invoke-static {p0, p1}, Lcom/taboola/android/utils/Logger;->d(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_86
.line 246
:cond_6c
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string p1, "location is not available"
invoke-static {p0, p1}, Lcom/taboola/android/utils/Logger;->d(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_86
.line 249
:cond_74
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string p1, "location permission is not granted"
invoke-static {p0, p1}, Lcom/taboola/android/utils/Logger;->d(Ljava/lang/String;Ljava/lang/String;)V
:try_end_7b
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_7b} :catch_7c
goto :goto_86
:catch_7c
move-exception p0
.line 252
sget-object p1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-static {p1, v0, p0}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
:goto_86
return-void
.end method
.method private static capitalize(Ljava/lang/String;)Ljava/lang/String;
.registers 3
if-eqz p0, :cond_2e
.line 359
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v0
if-nez v0, :cond_9
goto :goto_2e
:cond_9
const/4 v0, 0x0
.line 362
invoke-virtual {p0, v0}, Ljava/lang/String;->charAt(I)C
move-result v0
.line 363
invoke-static {v0}, Ljava/lang/Character;->isUpperCase(C)Z
move-result v1
if-eqz v1, :cond_15
return-object p0
.line 366
:cond_15
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {v0}, Ljava/lang/Character;->toUpperCase(C)C
move-result v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
const/4 v0, 0x1
invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
:cond_2e
:goto_2e
const-string p0, ""
return-object p0
.end method
.method private static createSdkDetailsJSON(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Lorg/json/JSONObject;
.registers 4
const/4 v0, 0x0
.line 152
invoke-static {p0, p1, p2, v0}, Lcom/taboola/android/utils/SdkDetailsHelper;->createSdkDetailsJSON(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Z)Lorg/json/JSONObject;
move-result-object p0
return-object p0
.end method
.method public static createSdkDetailsJSON(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Z)Lorg/json/JSONObject;
.registers 9
.line 161
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
.line 162
new-instance v1, Lorg/json/JSONObject;
invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V
.line 165
:try_start_a
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getPackageInfo(Landroid/content/Context;)Landroid/content/pm/PackageInfo;
move-result-object v2
const-string v3, "sdkt"
.line 167
invoke-virtual {v1, v3, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v3, "sdkv"
const-string v4, "2.6.0"
.line 168
invoke-virtual {v1, v3, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v3, "app"
.line 169
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getApplicationName(Landroid/content/Context;)Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Landroid/text/TextUtils;->htmlEncode(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
invoke-virtual {v1, v3, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v3, "appv"
.line 170
iget-object v4, v2, Landroid/content/pm/PackageInfo;->versionName:Ljava/lang/String;
invoke-virtual {v1, v3, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v3, "appid"
.line 171
iget-object v2, v2, Landroid/content/pm/PackageInfo;->packageName:Ljava/lang/String;
invoke-virtual {v1, v3, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "model"
.line 172
invoke-static {}, Lcom/taboola/android/utils/SdkDetailsHelper;->getDeviceName()Ljava/lang/String;
move-result-object v3
invoke-static {v3}, Landroid/text/TextUtils;->htmlEncode(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "lng"
.line 173
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getLanguagesJson(Landroid/content/Context;)Lorg/json/JSONObject;
move-result-object v3
invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "os"
const-string v3, "Android"
.line 174
invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "osv"
.line 175
sget-object v3, Landroid/os/Build$VERSION;->RELEASE:Ljava/lang/String;
invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "kotlin"
.line 176
invoke-static {}, Lcom/taboola/android/utils/SdkDetailsHelper;->isPublisherAppUsesKotlin()Z
move-result v3
invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Z)Lorg/json/JSONObject;
const-string v2, "androidx"
.line 177
invoke-static {}, Lcom/taboola/android/utils/SdkDetailsHelper;->isPublisherAppUsesAndroidx()Z
move-result v3
invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Z)Lorg/json/JSONObject;
if-eqz p1, :cond_72
const-string v2, "mdtd"
.line 179
invoke-virtual {v1, v2, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:cond_72
const-string p1, "net"
.line 181
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getNetworkClass(Landroid/content/Context;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, p1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 182
sget p1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x10
if-lt p1, v2, :cond_8a
const-string p1, "mem"
.line 183
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getMemory(Landroid/content/Context;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, p1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 186
:cond_8a
new-instance p1, Lorg/json/JSONObject;
invoke-direct {p1}, Lorg/json/JSONObject;-><init>()V
.line 191
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getDisplayWidth(Landroid/content/Context;)I
move-result v2
.line 192
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getDisplayHeight(Landroid/content/Context;)I
move-result v3
const-string v4, "wd"
.line 193
invoke-virtual {p1, v4, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
const-string v2, "ht"
.line 194
invoke-virtual {p1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
const-string v2, "scr"
.line 196
invoke-virtual {v1, v2, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
if-nez p3, :cond_ab
.line 199
invoke-static {p0, v1}, Lcom/taboola/android/utils/SdkDetailsHelper;->addLocation(Landroid/content/Context;Lorg/json/JSONObject;)V
:cond_ab
const-string p0, "sdkd"
.line 202
invoke-virtual {v0, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:try_end_b0
.catch Ljava/lang/Exception; {:try_start_a .. :try_end_b0} :catch_b1
goto :goto_d4
:catch_b1
move-exception p0
.line 204
sget-object p1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance p3, Ljava/lang/StringBuilder;
invoke-direct {p3}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "createSdkDetailsJSON() failed, sdkType = ["
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p2, "] "
invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/Exception;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-static {p1, p2, p0}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
.line 208
:goto_d4
:try_start_d4
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string p2, "createSdkDetailsJSON() finished with "
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/4 p2, 0x2
invoke-virtual {v0, p2}, Lorg/json/JSONObject;->toString(I)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/taboola/android/utils/Logger;->d(Ljava/lang/String;Ljava/lang/String;)V
:try_end_ef
.catch Ljava/lang/Exception; {:try_start_d4 .. :try_end_ef} :catch_f0
goto :goto_fa
:catch_f0
move-exception p0
.line 210
sget-object p1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
invoke-virtual {p0}, Ljava/lang/Exception;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {p1, p0}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
:goto_fa
return-object v0
.end method
.method public static createSdkDetailsMap(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Ljava/util/HashMap;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/lang/String;",
"Ljava/lang/String;",
")",
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 140
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
.line 141
invoke-static {p0, p1, p2}, Lcom/taboola/android/utils/SdkDetailsHelper;->createSdkDetailsJSON(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Lorg/json/JSONObject;
move-result-object p0
invoke-virtual {p0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object p0
const-string p1, "additional_data"
invoke-virtual {v0, p1, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
return-object v0
.end method
.method public static createSdkJsonString(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
.registers 4
.line 147
invoke-static {p0, p1, p2, p3}, Lcom/taboola/android/utils/SdkDetailsHelper;->createSdkDetailsJSON(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Z)Lorg/json/JSONObject;
move-result-object p0
invoke-virtual {p0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static forceSimCountryCode(Ljava/lang/String;Ljava/lang/String;)Z
.registers 3
.line 573
invoke-static {p1}, Lcom/taboola/android/utils/SecurityUtils;->getSHA256(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object p1
const-string v0, "376c21021b2800b444ae9214a5b251460c04490611dadf1585987e12ce0b6c21"
.line 576
invoke-virtual {p1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result p1
if-nez p1, :cond_12
const/4 p0, 0x0
return p0
.line 580
:cond_12
sput-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->sForcedSimCountryCode:Ljava/lang/String;
const/4 p0, 0x1
return p0
.end method
.method public static getAppVersion(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.line 350
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object p0
const/4 v1, 0x0
invoke-virtual {v0, p0, v1}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object p0
.line 351
iget-object p0, p0, Landroid/content/pm/PackageInfo;->versionName:Ljava/lang/String;
:try_end_f
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_f} :catch_10
return-object p0
:catch_10
move-exception p0
.line 353
sget-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
invoke-virtual {p0}, Ljava/lang/Exception;->getLocalizedMessage()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1, p0}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
const-string p0, ""
return-object p0
.end method
.method public static getApplicationName(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.line 526
sget-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->sApplicationName:Ljava/lang/String;
if-nez v0, :cond_19
.line 527
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object v0
.line 528
iget v1, v0, Landroid/content/pm/ApplicationInfo;->labelRes:I
if-nez v1, :cond_13
.line 529
iget-object p0, v0, Landroid/content/pm/ApplicationInfo;->nonLocalizedLabel:Ljava/lang/CharSequence;
invoke-interface {p0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object p0
goto :goto_17
:cond_13
invoke-virtual {p0, v1}, Landroid/content/Context;->getString(I)Ljava/lang/String;
move-result-object p0
:goto_17
sput-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->sApplicationName:Ljava/lang/String;
.line 532
:cond_19
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->sApplicationName:Ljava/lang/String;
return-object p0
.end method
.method public static getBridgeInfo(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Lorg/json/JSONObject;
.registers 5
const-string v0, "model"
.line 258
new-instance v1, Lorg/json/JSONObject;
invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V
.line 260
:try_start_7
invoke-static {p0, p1, p2}, Lcom/taboola/android/utils/SdkDetailsHelper;->createSdkDetailsJSON(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Lorg/json/JSONObject;
move-result-object p0
const-string p1, "sdkd"
invoke-virtual {p0, p1}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Lorg/json/JSONObject;
.line 261
invoke-static {}, Lcom/taboola/android/Taboola;->getTaboolaImpl()Lcom/taboola/android/ITaboolaImpl;
move-result-object p1
invoke-interface {p1}, Lcom/taboola/android/ITaboolaImpl;->getAdvertisingIdInfo()Lcom/taboola/android/global_components/advertisingid/AdvertisingIdInfo;
move-result-object p1
const-string p2, ""
if-eqz p1, :cond_23
.line 264
invoke-virtual {p1}, Lcom/taboola/android/global_components/advertisingid/AdvertisingIdInfo;->getAdvertisingId()Ljava/lang/String;
move-result-object p2
:cond_23
const-string p1, "deviceId"
.line 266
invoke-virtual {v1, p1, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p1, "AppName"
const-string p2, "app"
.line 267
invoke-virtual {p0, p2}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p2
invoke-virtual {v1, p1, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p1, "BundleName"
const-string p2, "appid"
.line 268
invoke-virtual {p0, p2}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p2
invoke-virtual {v1, p1, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p1, "SDKVersion"
const-string p2, "sdkv"
.line 269
invoke-virtual {p0, p2}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p2
invoke-virtual {v1, p1, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p1, "OSVersion"
const-string p2, "osv"
.line 270
invoke-virtual {p0, p2}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p2
invoke-virtual {v1, p1, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 271
invoke-virtual {p0, v0}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
invoke-virtual {v1, v0, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p1, "SDKType"
const-string p2, "sdkt"
.line 272
invoke-virtual {p0, p2}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
invoke-virtual {v1, p1, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:try_end_66
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_66} :catch_67
goto :goto_82
:catch_67
move-exception p0
.line 274
sget-object p1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "getBridgeInfo"
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p0
invoke-virtual {p2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {p1, p0}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
:goto_82
return-object v1
.end method
.method public static getCarrier(Landroid/content/Context;)Ljava/lang/String;
.registers 2
const-string v0, "phone"
.line 334
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/telephony/TelephonyManager;
if-eqz p0, :cond_f
.line 336
invoke-virtual {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
move-result-object p0
return-object p0
:cond_f
const-string p0, ""
return-object p0
.end method
.method public static getDefaultBrowser(Landroid/content/Context;)Ljava/lang/String;
.registers 5
const-string v0, ""
if-nez p0, :cond_5
return-object v0
.line 120
:cond_5
:try_start_5
new-instance v1, Landroid/content/Intent;
const-string v2, "android.intent.action.VIEW"
const-string v3, "https://"
invoke-static {v3}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v3
invoke-direct {v1, v2, v3}, Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V
.line 121
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
if-nez p0, :cond_19
return-object v0
:cond_19
const/high16 v2, 0x10000
.line 126
invoke-virtual {p0, v1, v2}, Landroid/content/pm/PackageManager;->resolveActivity(Landroid/content/Intent;I)Landroid/content/pm/ResolveInfo;
move-result-object v1
if-nez v1, :cond_22
return-object v0
.line 130
:cond_22
invoke-virtual {v1, p0}, Landroid/content/pm/ResolveInfo;->loadLabel(Landroid/content/pm/PackageManager;)Ljava/lang/CharSequence;
move-result-object p0
invoke-interface {p0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object p0
:try_end_2a
.catch Ljava/lang/Exception; {:try_start_5 .. :try_end_2a} :catch_2b
return-object p0
:catch_2b
move-exception p0
.line 132
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2, p0}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
return-object v0
.end method
.method public static getDeviceName()Ljava/lang/String;
.registers 3
.line 324
sget-object v0, Landroid/os/Build;->MANUFACTURER:Ljava/lang/String;
.line 325
sget-object v1, Landroid/os/Build;->MODEL:Ljava/lang/String;
.line 326
invoke-virtual {v1, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_f
.line 327
invoke-static {v1}, Lcom/taboola/android/utils/SdkDetailsHelper;->capitalize(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.line 329
:cond_f
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {v0}, Lcom/taboola/android/utils/SdkDetailsHelper;->capitalize(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, " "
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method private static getDisplay(Landroid/content/Context;)Landroid/view/Display;
.registers 3
const/4 v0, 0x0
if-nez p0, :cond_4
return-object v0
:cond_4
const-string v1, "window"
.line 388
invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/view/WindowManager;
if-nez p0, :cond_f
return-object v0
.line 392
:cond_f
invoke-interface {p0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object p0
return-object p0
.end method
.method public static getDisplayHeight(Landroid/content/Context;)I
.registers 1
.line 480
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getDisplaySize(Landroid/content/Context;)Landroidx/core/util/Pair;
move-result-object p0
iget-object p0, p0, Landroidx/core/util/Pair;->second:Ljava/lang/Object;
check-cast p0, Ljava/lang/Integer;
if-nez p0, :cond_c
const/4 p0, 0x0
goto :goto_10
.line 481
:cond_c
invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I
move-result p0
:goto_10
return p0
.end method
.method private static getDisplaySize(Landroid/content/Context;)Landroidx/core/util/Pair;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
")",
"Landroidx/core/util/Pair<",
"Ljava/lang/Integer;",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.line 500
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getDisplay(Landroid/content/Context;)Landroid/view/Display;
move-result-object p0
if-nez p0, :cond_2f
.line 504
:try_start_6
invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
move-result-object p0
invoke-virtual {p0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object p0
.line 505
new-instance v0, Landroidx/core/util/Pair;
iget v1, p0, Landroid/util/DisplayMetrics;->widthPixels:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
iget p0, p0, Landroid/util/DisplayMetrics;->heightPixels:I
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
invoke-direct {v0, v1, p0}, Landroidx/core/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
:try_end_1f
.catch Ljava/lang/Exception; {:try_start_6 .. :try_end_1f} :catch_20
goto :goto_49
.line 508
:catch_20
new-instance v0, Landroidx/core/util/Pair;
const/4 p0, 0x0
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
invoke-direct {v0, v1, p0}, Landroidx/core/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
goto :goto_49
.line 511
:cond_2f
new-instance v0, Landroid/graphics/Point;
invoke-direct {v0}, Landroid/graphics/Point;-><init>()V
.line 512
invoke-virtual {p0, v0}, Landroid/view/Display;->getSize(Landroid/graphics/Point;)V
.line 513
new-instance p0, Landroidx/core/util/Pair;
iget v1, v0, Landroid/graphics/Point;->x:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
iget v0, v0, Landroid/graphics/Point;->y:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
invoke-direct {p0, v1, v0}, Landroidx/core/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
move-object v0, p0
:goto_49
return-object v0
.end method
.method public static getDisplayWidth(Landroid/content/Context;)I
.registers 1
.line 491
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getDisplaySize(Landroid/content/Context;)Landroidx/core/util/Pair;
move-result-object p0
iget-object p0, p0, Landroidx/core/util/Pair;->first:Ljava/lang/Object;
check-cast p0, Ljava/lang/Integer;
if-nez p0, :cond_c
const/4 p0, 0x0
goto :goto_10
.line 492
:cond_c
invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I
move-result p0
:goto_10
return p0
.end method
.method private static getLanguagesJson(Landroid/content/Context;)Lorg/json/JSONObject;
.registers 8
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/json/JSONException;
}
.end annotation
.line 280
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
.line 282
invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
move-result-object v1
invoke-virtual {v1}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v1
iget-object v1, v1, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
invoke-virtual {v1}, Ljava/util/Locale;->getISO3Language()Ljava/lang/String;
move-result-object v1
const-string v2, "main"
.line 283
invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 285
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v1
if-eqz v1, :cond_2c
const-string v2, "locale"
.line 287
invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 288
invoke-virtual {v1}, Ljava/util/Locale;->getDisplayLanguage()Ljava/lang/String;
move-result-object v1
const-string v2, "dsplng"
invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 291
:cond_2c
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getSimCountryIso(Landroid/content/Context;)Ljava/lang/String;
move-result-object v1
const-string v2, "sim"
.line 292
invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v1, "phone"
.line 295
invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/telephony/TelephonyManager;
if-eqz v1, :cond_48
.line 297
invoke-virtual {v1}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
move-result-object v1
const-string v2, "netw"
invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:cond_48
const-string v1, "input_method"
.line 300
invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/view/inputmethod/InputMethodManager;
if-eqz p0, :cond_99
.line 302
new-instance v1, Lorg/json/JSONArray;
invoke-direct {v1}, Lorg/json/JSONArray;-><init>()V
.line 303
invoke-virtual {p0}, Landroid/view/inputmethod/InputMethodManager;->getEnabledInputMethodList()Ljava/util/List;
move-result-object v2
.line 304
invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_5f
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_94
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroid/view/inputmethod/InputMethodInfo;
const/4 v4, 0x1
.line 305
invoke-virtual {p0, v3, v4}, Landroid/view/inputmethod/InputMethodManager;->getEnabledInputMethodSubtypeList(Landroid/view/inputmethod/InputMethodInfo;Z)Ljava/util/List;
move-result-object v3
.line 306
invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_74
:goto_74
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_5f
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroid/view/inputmethod/InputMethodSubtype;
.line 307
invoke-virtual {v4}, Landroid/view/inputmethod/InputMethodSubtype;->getMode()Ljava/lang/String;
move-result-object v5
const-string v6, "keyboard"
invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v5
if-eqz v5, :cond_74
.line 308
invoke-virtual {v4}, Landroid/view/inputmethod/InputMethodSubtype;->getLocale()Ljava/lang/String;
move-result-object v4
invoke-virtual {v1, v4}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
goto :goto_74
:cond_94
const-string p0, "kbd"
.line 312
invoke-virtual {v0, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:cond_99
return-object v0
.end method
.method private static getMemory(Landroid/content/Context;)Ljava/lang/String;
.registers 5
const-string v0, "activity"
.line 373
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/app/ActivityManager;
if-nez p0, :cond_13
.line 375
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string v0, "Activity manager is null"
invoke-static {p0, v0}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
const/4 p0, 0x0
return-object p0
.line 378
:cond_13
new-instance v0, Landroid/app/ActivityManager$MemoryInfo;
invoke-direct {v0}, Landroid/app/ActivityManager$MemoryInfo;-><init>()V
.line 379
invoke-virtual {p0, v0}, Landroid/app/ActivityManager;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V
.line 380
iget-wide v0, v0, Landroid/app/ActivityManager$MemoryInfo;->totalMem:J
const-wide/16 v2, 0x400
div-long/2addr v0, v2
invoke-static {v0, v1}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method private static getNetworkClass(Landroid/content/Context;)Ljava/lang/String;
.registers 2
const-string v0, "phone"
.line 542
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/telephony/TelephonyManager;
const-string v0, "wifi"
if-nez p0, :cond_d
return-object v0
.line 546
:cond_d
invoke-virtual {p0}, Landroid/telephony/TelephonyManager;->getNetworkType()I
move-result p0
packed-switch p0, :pswitch_data_1e
return-object v0
:pswitch_15
const-string p0, "4g"
return-object p0
:pswitch_18
const-string p0, "3g"
return-object p0
:pswitch_1b
const-string p0, "2g"
return-object p0
:pswitch_data_1e
.packed-switch 0x1
:pswitch_1b
:pswitch_1b
:pswitch_18
:pswitch_1b
:pswitch_18
:pswitch_18
:pswitch_1b
:pswitch_18
:pswitch_18
:pswitch_18
:pswitch_1b
:pswitch_18
:pswitch_15
:pswitch_18
:pswitch_18
.end packed-switch
.end method
.method public static getPackageInfo(Landroid/content/Context;)Landroid/content/pm/PackageInfo;
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/pm/PackageManager$NameNotFoundException;
}
.end annotation
.line 536
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
.line 537
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
const/4 v1, 0x0
invoke-virtual {p0, v0, v1}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object p0
return-object p0
.end method
.method public static getParentScrollView(Landroid/view/View;)Landroid/view/View;
.registers 5
.line 407
invoke-virtual {p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object p0
:goto_4
if-eqz p0, :cond_87
.line 409
instance-of v0, p0, Landroid/widget/ScrollView;
if-nez v0, :cond_66
instance-of v0, p0, Landroid/widget/ListView;
if-eqz v0, :cond_f
goto :goto_66
.line 414
:cond_f
:try_start_f
instance-of v0, p0, Landroidx/core/view/ScrollingView;
if-eqz v0, :cond_38
.line 415
sget-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string v1, "getParentScrollView | View is recognized as SupportV4 scrolling view."
invoke-static {v0, v1}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 416
check-cast p0, Landroid/view/View;
:try_end_1c
.catch Ljava/lang/NoClassDefFoundError; {:try_start_f .. :try_end_1c} :catch_1d
return-object p0
:catch_1d
move-exception v0
.line 419
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "getParentScrollView | Info: view parent is not of android.support.v4.view.ScrollingView type. | e = "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/NoClassDefFoundError;->getLocalizedMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v1, v0}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 422
:cond_38
:try_start_38
instance-of v0, p0, Landroidx/core/view/ScrollingView;
if-eqz v0, :cond_61
.line 423
sget-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string v1, "getParentScrollView | View is recognized as AndroidX scrolling view."
invoke-static {v0, v1}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 424
check-cast p0, Landroid/view/View;
:try_end_45
.catch Ljava/lang/NoClassDefFoundError; {:try_start_38 .. :try_end_45} :catch_46
return-object p0
:catch_46
move-exception v0
.line 427
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Info: view parent is not of androidx.core.view.ScrollingView type. | e = "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/NoClassDefFoundError;->getLocalizedMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v1, v0}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 430
:cond_61
invoke-interface {p0}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;
move-result-object p0
goto :goto_4
.line 410
:cond_66
:goto_66
sget-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, " is recognized as scrolling."
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Lcom/taboola/android/utils/Logger;->d(Ljava/lang/String;Ljava/lang/String;)V
.line 411
check-cast p0, Landroid/view/View;
return-object p0
:cond_87
const/4 p0, 0x0
return-object p0
.end method
.method private static getSimCodeFromTelephonyManager(Landroid/content/Context;)Ljava/lang/String;
.registers 4
const-string v0, "phone"
.line 623
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
if-eqz v0, :cond_f
.line 625
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
move-result-object v0
goto :goto_17
.line 627
:cond_f
sget-object v0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string v1, "can\'t get access to TelephonyManager"
invoke-static {v0, v1}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
const/4 v0, 0x0
.line 630
:goto_17
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_38
.line 631
invoke-static {p0}, Lcom/taboola/android/utils/SharedPrefUtil;->getCachedSimCode(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 632
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "getSimCodeFromTelephonyManager failed, fallback to "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {p0, v1}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_3b
.line 634
:cond_38
invoke-static {p0, v0}, Lcom/taboola/android/utils/SharedPrefUtil;->saveSimCodeToSharedPreferences(Landroid/content/Context;Ljava/lang/String;)V
:goto_3b
return-object v0
.end method
.method public static getSimCountryIso(Landroid/content/Context;)Ljava/lang/String;
.registers 3
const-string v0, "undefined"
if-nez p0, :cond_c
.line 602
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string v1, "getSimCountryIso | Context == null"
invoke-static {p0, v1}, Lcom/taboola/android/utils/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.line 607
:cond_c
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->sForcedSimCountryCode:Ljava/lang/String;
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_1e
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->sForcedSimCountryCode:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_1e
const/4 v0, 0x1
goto :goto_1f
:cond_1e
const/4 v0, 0x0
:goto_1f
if-eqz v0, :cond_24
.line 611
sget-object p0, Lcom/taboola/android/utils/SdkDetailsHelper;->sForcedSimCountryCode:Ljava/lang/String;
goto :goto_28
.line 613
:cond_24
invoke-static {p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->getSimCodeFromTelephonyManager(Landroid/content/Context;)Ljava/lang/String;
move-result-object p0
:goto_28
return-object p0
.end method
.method private static varargs isClassExist([Ljava/lang/String;)Z
.registers 5
.line 656
array-length v0, p0
const/4 v1, 0x0
const/4 v2, 0x0
:goto_3
if-ge v2, v0, :cond_f
aget-object v3, p0, v2
.line 658
:try_start_7
invoke-static {v3}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
:try_end_a
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_a} :catch_c
const/4 p0, 0x1
return p0
:catch_c
add-int/lit8 v2, v2, 0x1
goto :goto_3
:cond_f
return v1
.end method
.method private static isPublisherAppUsesAndroidx()Z
.registers 2
const-string v0, "androidx.appcompat.app.AppCompatActivity"
const-string v1, "androidx.core.R"
.line 652
filled-new-array {v0, v1}, [Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/taboola/android/utils/SdkDetailsHelper;->isClassExist([Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method private static isPublisherAppUsesKotlin()Z
.registers 2
const-string v0, "kotlin.jvm.internal.Intrinsics"
const-string v1, "kotlin.jvm.internal.Reflection"
.line 647
filled-new-array {v0, v1}, [Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/taboola/android/utils/SdkDetailsHelper;->isClassExist([Ljava/lang/String;)Z
move-result v0
return v0
.end method
.method public static shouldRemoveFocus(Landroid/view/View;)Z
.registers 6
.line 442
invoke-virtual {p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object p0
:goto_4
if-eqz p0, :cond_66
const/4 v0, 0x1
.line 447
:try_start_7
instance-of v1, p0, Landroidx/core/view/ScrollingView;
if-nez v1, :cond_f
instance-of v1, p0, Landroidx/viewpager/widget/ViewPager;
if-eqz v1, :cond_32
.line 448
:cond_f
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string v2, "shouldRemoveFocus | View is recognized as SupportV4 view."
invoke-static {v1, v2}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
:try_end_16
.catch Ljava/lang/NoClassDefFoundError; {:try_start_7 .. :try_end_16} :catch_17
return v0
:catch_17
move-exception v1
.line 452
sget-object v2, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "shouldRemoveFocus | Info: android.support.v4 class might not be installed in host app. | e = "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/NoClassDefFoundError;->getLocalizedMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v2, v1}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 457
:cond_32
:try_start_32
instance-of v1, p0, Landroidx/core/view/ScrollingView;
if-nez v1, :cond_3e
instance-of v1, p0, Landroidx/viewpager/widget/ViewPager;
if-nez v1, :cond_3e
instance-of v1, p0, Landroidx/viewpager2/widget/ViewPager2;
if-eqz v1, :cond_61
.line 458
:cond_3e
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
const-string v2, "shouldRemoveFocus | View is recognized as AndroidX view."
invoke-static {v1, v2}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
:try_end_45
.catch Ljava/lang/NoClassDefFoundError; {:try_start_32 .. :try_end_45} :catch_46
return v0
:catch_46
move-exception v0
.line 462
sget-object v1, Lcom/taboola/android/utils/SdkDetailsHelper;->TAG:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "shouldRemoveFocus | Info: AndroidX class might not be installed in host app. | e = "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/NoClassDefFoundError;->getLocalizedMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v1, v0}, Lcom/taboola/android/utils/Logger;->i(Ljava/lang/String;Ljava/lang/String;)V
.line 466
:cond_61
invoke-interface {p0}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;
move-result-object p0
goto :goto_4
:cond_66
const/4 p0, 0x0
return p0
.end method
.method public static verifyIfNeededToChangeSimCode(Lcom/taboola/android/monitor/TBSimCodeChange;)V
.registers 2
const/4 v0, 0x0
if-eqz p0, :cond_c
.line 589
invoke-virtual {p0}, Lcom/taboola/android/monitor/TBSimCodeChange;->getSimCode()Ljava/lang/String;
move-result-object v0
.line 590
invoke-virtual {p0}, Lcom/taboola/android/monitor/TBSimCodeChange;->getPassword()Ljava/lang/String;
move-result-object p0
goto :goto_d
:cond_c
move-object p0, v0
.line 593
:goto_d
invoke-static {v0, p0}, Lcom/taboola/android/utils/SdkDetailsHelper;->forceSimCountryCode(Ljava/lang/String;Ljava/lang/String;)Z
return-void
.end method