BaseUtils.smali
.class Lcom/razorpay/BaseUtils;
.super Ljava/lang/Object;
.source "BaseUtils.java"
# static fields
.field static final synthetic $assertionsDisabled:Z = false
.field private static PERMISSION_DISABLED:Ljava/lang/String; = "permission disabled"
.field static ipAddress:Ljava/lang/String;
.field private static isCompatibleWithGooglePay:Z
.field private static isGpayCardsUpiRegistered:Z
.field private static sWebViewDebuggingEnabled:Z
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 150
sget-object v0, Lcom/razorpay/D$$l_;->a:Ljava/lang/Boolean;
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
sput-boolean v0, Lcom/razorpay/BaseUtils;->sWebViewDebuggingEnabled:Z
const/4 v0, 0x1
.line 152
sput-boolean v0, Lcom/razorpay/BaseUtils;->isCompatibleWithGooglePay:Z
const/4 v0, 0x0
.line 153
sput-boolean v0, Lcom/razorpay/BaseUtils;->isGpayCardsUpiRegistered:Z
return-void
.end method
.method constructor <init>()V
.registers 1
.line 145
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static MD5Hash(Ljava/lang/String;)Ljava/lang/String;
.registers 3
:try_start_0
const-string v0, "MD5"
.line 1097
invoke-static {v0}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v0
.line 1099
invoke-virtual {p0}, Ljava/lang/String;->getBytes()[B
move-result-object p0
invoke-virtual {v0, p0}, Ljava/security/MessageDigest;->digest([B)[B
move-result-object p0
.line 1101
new-instance v0, Ljava/math/BigInteger;
const/4 v1, 0x1
invoke-direct {v0, v1, p0}, Ljava/math/BigInteger;-><init>(I[B)V
const/16 p0, 0x10
.line 1103
invoke-virtual {v0, p0}, Ljava/math/BigInteger;->toString(I)Ljava/lang/String;
move-result-object p0
.line 1104
:goto_1a
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v0
const/16 v1, 0x20
if-ge v0, v1, :cond_32
.line 1105
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "0"
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
:try_end_31
.catch Ljava/security/NoSuchAlgorithmException; {:try_start_0 .. :try_end_31} :catch_33
goto :goto_1a
:cond_32
return-object p0
:catch_33
move-exception p0
.line 1110
new-instance v0, Ljava/lang/RuntimeException;
invoke-direct {v0, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v0
.end method
.method static synthetic access$000(Ljavax/net/ssl/HttpsURLConnection;)Lorg/json/JSONObject;
.registers 1
.line 145
invoke-static {p0}, Lcom/razorpay/BaseUtils;->getResponseJson(Ljavax/net/ssl/HttpsURLConnection;)Lorg/json/JSONObject;
move-result-object p0
return-object p0
.end method
.method static buildSerial()Ljava/lang/String;
.registers 1
.line 1181
sget-object v0, Landroid/os/Build;->SERIAL:Ljava/lang/String;
return-object v0
.end method
.method static checkForLatestVersion(Landroid/content/Context;I)V
.registers 3
.line 851
invoke-static {}, Lcom/razorpay/U$$U$;->a()Lcom/razorpay/BaseConfig;
move-result-object v0
invoke-virtual {v0}, Lcom/razorpay/BaseConfig;->isSDKUpdateAlertEnabled()Z
move-result v0
if-eqz v0, :cond_2a
invoke-static {p0}, Lcom/razorpay/BaseUtils;->isMerchantAppDebuggable(Landroid/content/Context;)Z
move-result v0
if-eqz v0, :cond_2a
.line 852
invoke-static {}, Lcom/razorpay/U$$U$;->a()Lcom/razorpay/BaseConfig;
move-result-object v0
invoke-virtual {v0}, Lcom/razorpay/BaseConfig;->getLatestSDKVersionCode()I
move-result v0
if-ge p1, v0, :cond_2a
.line 853
invoke-static {}, Lcom/razorpay/U$$U$;->a()Lcom/razorpay/BaseConfig;
move-result-object p1
invoke-virtual {p1}, Lcom/razorpay/BaseConfig;->getUpdateSDKMsg()Ljava/lang/String;
move-result-object p1
const/4 v0, 0x1
.line 854
invoke-static {p0, p1, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
move-result-object p0
invoke-virtual {p0}, Landroid/widget/Toast;->show()V
:cond_2a
return-void
.end method
.method public static checkGpayCardsUpiRegistered(Landroid/app/Activity;Ljava/lang/String;)Z
.registers 5
if-nez p1, :cond_5
.line 1352
sget-boolean p0, Lcom/razorpay/BaseUtils;->isGpayCardsUpiRegistered:Z
return p0
:cond_5
const/4 p0, 0x0
.line 1355
:try_start_6
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0, p1}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
const-string p1, "code"
.line 1356
invoke-virtual {v0, p1}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const/4 v0, -0x1
invoke-virtual {p1}, Ljava/lang/String;->hashCode()I
move-result v1
const v2, -0x5b7b865e
if-eq v1, v2, :cond_1c
goto :goto_25
:cond_1c
const-string v1, "google_pay"
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_25
move v0, p0
:cond_25
:goto_25
if-eqz v0, :cond_28
return p0
.line 1358
:cond_28
sget-boolean p0, Lcom/razorpay/BaseUtils;->isGpayCardsUpiRegistered:Z
:try_end_2a
.catch Lorg/json/JSONException; {:try_start_6 .. :try_end_2a} :catch_2b
return p0
:catch_2b
move-exception p1
.line 1363
invoke-virtual {p1}, Lorg/json/JSONException;->printStackTrace()V
return p0
.end method
.method static checkUpiRegisteredApp(Landroid/content/Context;Ljava/lang/String;)Z
.registers 2
.line 557
invoke-virtual {p1}, Ljava/lang/String;->hashCode()I
const-string p0, "com.google.android.apps.nbu.paisa.user"
invoke-virtual {p1, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p0
if-nez p0, :cond_d
const/4 p0, 0x1
return p0
.line 562
:cond_d
sget-boolean p0, Lcom/razorpay/BaseUtils;->isCompatibleWithGooglePay:Z
return p0
.end method
.method static constructBasicAuth(Ljava/lang/String;)Ljava/lang/String;
.registers 2
.line 162
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
const-string v0, ":"
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string v0, "UTF-8"
.line 164
invoke-virtual {p0, v0}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object p0
const/4 v0, 0x2
.line 165
invoke-static {p0, v0}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static constructPublicKey(Ljava/lang/String;)Ljava/security/PublicKey;
.registers 2
.line 532
:try_start_0
invoke-virtual {p0}, Ljava/lang/String;->getBytes()[B
move-result-object p0
const/4 v0, 0x0
invoke-static {p0, v0}, Landroid/util/Base64;->decode([BI)[B
move-result-object p0
.line 533
new-instance v0, Ljava/security/spec/X509EncodedKeySpec;
invoke-direct {v0, p0}, Ljava/security/spec/X509EncodedKeySpec;-><init>([B)V
const-string p0, "RSA"
.line 534
invoke-static {p0}, Ljava/security/KeyFactory;->getInstance(Ljava/lang/String;)Ljava/security/KeyFactory;
move-result-object p0
.line 535
invoke-virtual {p0, v0}, Ljava/security/KeyFactory;->generatePublic(Ljava/security/spec/KeySpec;)Ljava/security/PublicKey;
move-result-object p0
:try_end_18
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_18} :catch_19
return-object p0
:catch_19
const/4 p0, 0x0
return-object p0
.end method
.method static decryptFile(Ljava/lang/String;)Ljava/lang/String;
.registers 10
.line 785
:try_start_0
new-instance v0, Lcom/razorpay/CryptLib;
invoke-direct {v0}, Lcom/razorpay/CryptLib;-><init>()V
const-string v1, "rzpisunitedred"
const-string v2, "SHA-256"
.line 2196
invoke-static {v2}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v2
const-string v3, "UTF-8"
.line 2198
invoke-virtual {v1, v3}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object v1
invoke-virtual {v2, v1}, Ljava/security/MessageDigest;->update([B)V
.line 2199
invoke-virtual {v2}, Ljava/security/MessageDigest;->digest()[B
move-result-object v1
.line 2201
new-instance v2, Ljava/lang/StringBuffer;
invoke-direct {v2}, Ljava/lang/StringBuffer;-><init>()V
.line 2202
array-length v3, v1
const/4 v4, 0x0
move v5, v4
:goto_22
if-ge v5, v3, :cond_3b
aget-byte v6, v1, v5
const-string v7, "%02x"
const/4 v8, 0x1
new-array v8, v8, [Ljava/lang/Object;
.line 2203
invoke-static {v6}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
move-result-object v6
aput-object v6, v8, v4
invoke-static {v7, v8}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v6
invoke-virtual {v2, v6}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
add-int/lit8 v5, v5, 0x1
goto :goto_22
.line 2207
:cond_3b
invoke-virtual {v2}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/String;->length()I
move-result v1
const/16 v3, 0x20
if-le v3, v1, :cond_4c
.line 2209
invoke-virtual {v2}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object v1
goto :goto_54
.line 2213
:cond_4c
invoke-virtual {v2}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v1, v4, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
:goto_54
const-string v2, "glorygloryunited"
.line 788
invoke-virtual {v0, p0, v1, v2}, Lcom/razorpay/CryptLib;->b(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
:try_end_5a
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_5a} :catch_5b
return-object p0
:catch_5b
move-exception p0
.line 792
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0}, Ljava/lang/Exception;->getLocalizedMessage()Ljava/lang/String;
move-result-object v1
const-string v2, "S2"
invoke-static {v0, v2, v1}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 793
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "Unable to decrypt file, "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/4 p0, 0x0
return-object p0
.end method
.method static dpToPixels(Landroid/content/Context;I)I
.registers 3
.line 860
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p0
int-to-float p1, p1
.line 864
invoke-virtual {p0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object p0
const/4 v0, 0x1
.line 861
invoke-static {v0, p1, p0}, Landroid/util/TypedValue;->applyDimension(IFLandroid/util/DisplayMetrics;)F
move-result p0
float-to-int p0, p0
return p0
.end method
.method private static enableJavaScriptInWebView(Landroid/webkit/WebView;)V
.registers 2
.line 253
invoke-virtual {p0}, Landroid/webkit/WebView;->getSettings()Landroid/webkit/WebSettings;
move-result-object p0
const/4 v0, 0x1
.line 254
invoke-virtual {p0, v0}, Landroid/webkit/WebSettings;->setJavaScriptEnabled(Z)V
return-void
.end method
.method static fetchIP(Lcom/razorpay/RzpJSONCallback;)V
.registers 3
.line 1185
new-instance v0, Ljava/lang/Thread;
new-instance v1, Lcom/razorpay/l_$w$;
invoke-direct {v1, p0}, Lcom/razorpay/l_$w$;-><init>(Lcom/razorpay/RzpJSONCallback;)V
invoke-direct {v0, v1}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;)V
.line 1216
invoke-virtual {v0}, Ljava/lang/Thread;->start()V
return-void
.end method
.method static getAllPluginsFromManifest(Landroid/content/Context;)Ljava/util/HashMap;
.registers 11
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
")",
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
const-string v0, "com.razorpay.plugin."
const/4 v1, 0x0
.line 196
:try_start_3
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v2
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object p0
const/16 v3, 0x80
invoke-virtual {v2, p0, v3}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object p0
.line 197
iget-object v2, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
if-nez v2, :cond_16
return-object v1
.line 201
:cond_16
new-instance v2, Ljava/util/HashMap;
invoke-direct {v2}, Ljava/util/HashMap;-><init>()V
.line 203
iget-object v3, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v3}, Landroid/os/Bundle;->keySet()Ljava/util/Set;
move-result-object v3
.line 205
invoke-interface {v3}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_25
:goto_25
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_c1
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, Ljava/lang/String;
.line 206
invoke-virtual {v4, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v5
:try_end_35
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_3 .. :try_end_35} :catch_c2
const-string v6, "GooglePay SDK is not included"
const-string v7, "S2"
const-string v8, "com.google.android.apps.nbu.paisa.inapp.client.api.PaymentsClient"
if-eqz v5, :cond_6f
:try_start_3d
iget-object v5, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v5, v4}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
const-string v9, "com.razorpay.RzpGpayMerged"
invoke-virtual {v5, v9}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v5
:try_end_49
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_3d .. :try_end_49} :catch_c2
if-eqz v5, :cond_6f
.line 208
:try_start_4b
invoke-static {v8}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v5
.line 209
invoke-virtual {v5}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
move-result-object v5
if-eqz v5, :cond_25
.line 211
iget-object v5, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v5, v4}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
invoke-virtual {v2, v4, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_5e
.catch Ljava/lang/ClassNotFoundException; {:try_start_4b .. :try_end_5e} :catch_66
.catch Ljava/lang/IllegalAccessException; {:try_start_4b .. :try_end_5e} :catch_61
.catch Ljava/lang/InstantiationException; {:try_start_4b .. :try_end_5e} :catch_5f
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_4b .. :try_end_5e} :catch_c2
goto :goto_25
:catch_5f
move-exception v4
goto :goto_62
:catch_61
move-exception v4
.line 217
:goto_62
:try_start_62
invoke-virtual {v4}, Ljava/lang/ReflectiveOperationException;->printStackTrace()V
goto :goto_25
:catch_66
move-exception v4
.line 215
invoke-virtual {v4}, Ljava/lang/ClassNotFoundException;->getMessage()Ljava/lang/String;
move-result-object v4
invoke-static {v4, v7, v6}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_25
.line 219
:cond_6f
invoke-virtual {v4, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v5
if-eqz v5, :cond_a8
iget-object v5, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v5, v4}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
const-string v9, "com.razorpay.RzpGooglePay"
invoke-virtual {v5, v9}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v5
:try_end_81
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_62 .. :try_end_81} :catch_c2
if-eqz v5, :cond_a8
.line 221
:try_start_83
invoke-static {v8}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v5
.line 222
invoke-virtual {v5}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
move-result-object v5
if-eqz v5, :cond_25
.line 224
iget-object v5, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v5, v4}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
invoke-virtual {v2, v4, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_96
.catch Ljava/lang/ClassNotFoundException; {:try_start_83 .. :try_end_96} :catch_9e
.catch Ljava/lang/IllegalAccessException; {:try_start_83 .. :try_end_96} :catch_99
.catch Ljava/lang/InstantiationException; {:try_start_83 .. :try_end_96} :catch_97
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_83 .. :try_end_96} :catch_c2
goto :goto_25
:catch_97
move-exception v4
goto :goto_9a
:catch_99
move-exception v4
.line 230
:goto_9a
:try_start_9a
invoke-virtual {v4}, Ljava/lang/ReflectiveOperationException;->printStackTrace()V
goto :goto_25
:catch_9e
move-exception v4
.line 228
invoke-virtual {v4}, Ljava/lang/ClassNotFoundException;->getMessage()Ljava/lang/String;
move-result-object v4
invoke-static {v4, v7, v6}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
goto/16 :goto_25
.line 233
:cond_a8
invoke-virtual {v4, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v5
if-eqz v5, :cond_25
iget-object v5, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v5, v4}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
if-eqz v5, :cond_25
.line 234
iget-object v5, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
invoke-virtual {v5, v4}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
invoke-virtual {v2, v4, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_bf
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_9a .. :try_end_bf} :catch_c2
goto/16 :goto_25
:cond_c1
return-object v2
:catch_c2
move-exception p0
.line 240
invoke-virtual {p0}, Landroid/content/pm/PackageManager$NameNotFoundException;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0}, Landroid/content/pm/PackageManager$NameNotFoundException;->getMessage()Ljava/lang/String;
move-result-object p0
const-string v2, "S0"
invoke-static {v0, v2, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return-object v1
.end method
.method static getAndroidId(Landroid/content/Context;)Ljava/lang/String;
.registers 2
.line 944
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
const-string v0, "android_id"
invoke-static {p0, v0}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static getAppBuildType(Landroid/content/Context;)Ljava/lang/String;
.registers 1
.line 442
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object p0
iget p0, p0, Landroid/content/pm/ApplicationInfo;->flags:I
and-int/lit8 p0, p0, 0x2
if-eqz p0, :cond_d
const-string p0, "development"
return-object p0
:cond_d
const-string p0, "production"
return-object p0
.end method
.method static getAppNameOfPackageName(Ljava/lang/String;Landroid/content/Context;)Ljava/lang/String;
.registers 4
.line 658
:try_start_0
invoke-virtual {p1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p1
const/16 v0, 0x80
.line 659
invoke-virtual {p1, p0, v0}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object p0
.line 660
iget v0, p0, Landroid/content/pm/ApplicationInfo;->labelRes:I
.line 661
invoke-virtual {p1, p0}, Landroid/content/pm/PackageManager;->getResourcesForApplication(Landroid/content/pm/ApplicationInfo;)Landroid/content/res/Resources;
move-result-object p1
if-nez v0, :cond_19
.line 662
iget-object p0, p0, Landroid/content/pm/ApplicationInfo;->nonLocalizedLabel:Ljava/lang/CharSequence;
invoke-interface {p0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object p0
goto :goto_1d
:cond_19
invoke-virtual {p1, v0}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
move-result-object p0
:try_end_1d
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_1d} :catch_1e
:goto_1d
return-object p0
:catch_1e
move-exception p0
.line 665
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {p0}, Ljava/lang/Exception;->getLocalizedMessage()Ljava/lang/String;
move-result-object v0
const-string v1, "error:exception"
invoke-static {p1, v1, v0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 666
invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V
.line 667
throw p0
.end method
.method static getAppNameOfResolveInfo(Landroid/content/pm/ResolveInfo;Landroid/content/Context;)Ljava/lang/String;
.registers 2
.line 603
iget-object p0, p0, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
iget-object p0, p0, Landroid/content/pm/ActivityInfo;->packageName:Ljava/lang/String;
invoke-static {p0, p1}, Lcom/razorpay/BaseUtils;->getAppNameOfPackageName(Ljava/lang/String;Landroid/content/Context;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static getBase64FromOtherAppsResource(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
.registers 4
.line 643
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
const/16 v0, 0x80
.line 645
:try_start_6
invoke-virtual {p0, p1, v0}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object p1
.line 646
invoke-virtual {p0, p1}, Landroid/content/pm/PackageManager;->getResourcesForApplication(Landroid/content/pm/ApplicationInfo;)Landroid/content/res/Resources;
move-result-object p0
.line 647
iget p1, p1, Landroid/content/pm/ApplicationInfo;->icon:I
.line 648
invoke-static {p0, p1}, Lcom/razorpay/BaseUtils;->getBase64FromResource(Landroid/content/res/Resources;I)Ljava/lang/String;
move-result-object p0
:try_end_14
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_6 .. :try_end_14} :catch_15
return-object p0
:catch_15
move-exception p0
.line 650
invoke-virtual {p0}, Landroid/content/pm/PackageManager$NameNotFoundException;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {p0}, Landroid/content/pm/PackageManager$NameNotFoundException;->getLocalizedMessage()Ljava/lang/String;
move-result-object v0
const-string v1, "S0"
invoke-static {p1, v1, v0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 651
invoke-virtual {p0}, Landroid/content/pm/PackageManager$NameNotFoundException;->printStackTrace()V
const/4 p0, 0x0
return-object p0
.end method
.method static getBase64FromResource(Landroid/content/res/Resources;I)Ljava/lang/String;
.registers 6
.line 672
invoke-static {p0, p1}, Landroid/graphics/BitmapFactory;->decodeResource(Landroid/content/res/Resources;I)Landroid/graphics/Bitmap;
move-result-object v0
if-nez v0, :cond_39
.line 674
invoke-virtual {p0, p1}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object p0
if-eqz p0, :cond_39
.line 676
instance-of p1, p0, Landroid/graphics/drawable/BitmapDrawable;
if-eqz p1, :cond_17
.line 677
check-cast p0, Landroid/graphics/drawable/BitmapDrawable;
invoke-virtual {p0}, Landroid/graphics/drawable/BitmapDrawable;->getBitmap()Landroid/graphics/Bitmap;
move-result-object v0
goto :goto_39
.line 679
:cond_17
invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->getIntrinsicWidth()I
move-result p1
invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->getIntrinsicHeight()I
move-result v0
sget-object v1, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;
invoke-static {p1, v0, v1}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
move-result-object v0
.line 680
new-instance p1, Landroid/graphics/Canvas;
invoke-direct {p1, v0}, Landroid/graphics/Canvas;-><init>(Landroid/graphics/Bitmap;)V
.line 681
invoke-virtual {p1}, Landroid/graphics/Canvas;->getWidth()I
move-result v1
invoke-virtual {p1}, Landroid/graphics/Canvas;->getHeight()I
move-result v2
const/4 v3, 0x0
invoke-virtual {p0, v3, v3, v1, v2}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
.line 682
invoke-virtual {p0, p1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V
:cond_39
:goto_39
if-eqz v0, :cond_64
.line 688
new-instance p0, Ljava/io/ByteArrayOutputStream;
invoke-direct {p0}, Ljava/io/ByteArrayOutputStream;-><init>()V
.line 689
sget-object p1, Landroid/graphics/Bitmap$CompressFormat;->PNG:Landroid/graphics/Bitmap$CompressFormat;
const/16 v1, 0x64
invoke-virtual {v0, p1, v1, p0}, Landroid/graphics/Bitmap;->compress(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z
.line 690
invoke-virtual {p0}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object p0
.line 691
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "data:image/png;base64,"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
const/4 v0, 0x2
invoke-static {p0, v0}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object p0
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
:cond_64
const/4 p0, 0x0
return-object p0
.end method
.method static getCarrierOperatorName(Landroid/content/Context;)Ljava/lang/String;
.registers 2
const-string v0, "phone"
.line 1138
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 1140
invoke-virtual {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
move-result-object p0
return-object p0
.line 1142
:cond_f
sget-object p0, Lcom/razorpay/BaseUtils;->PERMISSION_DISABLED:Ljava/lang/String;
return-object p0
.end method
.method static getCellularNetworkProviderName(Landroid/content/Context;)Ljava/lang/String;
.registers 2
const-string v0, "phone"
.line 385
invoke-static {p0, v0}, Lcom/razorpay/BaseUtils;->getSystemService(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/telephony/TelephonyManager;
if-eqz p0, :cond_f
.line 387
invoke-virtual {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
move-result-object p0
return-object p0
:cond_f
const-string p0, "unknown"
return-object p0
.end method
.method static getCellularNetworkType(Landroid/content/Context;)Ljava/lang/String;
.registers 4
const-string v0, "NA"
:try_start_2
const-string v1, "phone"
.line 347
invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/telephony/TelephonyManager;
.line 348
invoke-virtual {p0}, Landroid/telephony/TelephonyManager;->getNetworkType()I
move-result p0
:try_end_e
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_e} :catch_1b
packed-switch p0, :pswitch_data_2a
return-object v0
:pswitch_12
const-string p0, "4G"
return-object p0
:pswitch_15
const-string p0, "3G"
return-object p0
:pswitch_18
:try_start_18
const-string p0, "2G"
:try_end_1a
.catch Ljava/lang/Exception; {:try_start_18 .. :try_end_1a} :catch_1b
return-object p0
:catch_1b
move-exception p0
.line 375
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Ljava/lang/Exception;->getLocalizedMessage()Ljava/lang/String;
move-result-object p0
const-string v2, "S2"
invoke-static {v1, v2, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return-object v0
:pswitch_data_2a
.packed-switch 0x1
:pswitch_18
:pswitch_18
:pswitch_15
:pswitch_18
:pswitch_15
:pswitch_15
:pswitch_18
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_18
:pswitch_15
:pswitch_12
:pswitch_15
:pswitch_15
.end packed-switch
.end method
.method static getDataNetworkType(Landroid/content/Context;)Lcom/razorpay/NetworkType;
.registers 2
const-string v0, "android.permission.ACCESS_NETWORK_STATE"
.line 399
invoke-static {p0, v0}, Lcom/razorpay/BaseUtils;->hasPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_42
const-string v0, "connectivity"
.line 400
invoke-static {p0, v0}, Lcom/razorpay/BaseUtils;->getSystemService(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/net/ConnectivityManager;
if-eqz p0, :cond_42
const/4 v0, 0x1
.line 402
invoke-virtual {p0, v0}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
move-result-object v0
if-eqz v0, :cond_22
.line 403
invoke-virtual {v0}, Landroid/net/NetworkInfo;->isConnected()Z
move-result v0
if-eqz v0, :cond_22
.line 404
sget-object p0, Lcom/razorpay/NetworkType;->WIFI:Lcom/razorpay/NetworkType;
return-object p0
:cond_22
const/4 v0, 0x7
.line 407
invoke-virtual {p0, v0}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
move-result-object v0
if-eqz v0, :cond_32
.line 408
invoke-virtual {v0}, Landroid/net/NetworkInfo;->isConnected()Z
move-result v0
if-eqz v0, :cond_32
.line 409
sget-object p0, Lcom/razorpay/NetworkType;->BLUETOOTH:Lcom/razorpay/NetworkType;
return-object p0
:cond_32
const/4 v0, 0x0
.line 412
invoke-virtual {p0, v0}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
move-result-object p0
if-eqz p0, :cond_42
.line 413
invoke-virtual {p0}, Landroid/net/NetworkInfo;->isConnected()Z
move-result p0
if-eqz p0, :cond_42
.line 414
sget-object p0, Lcom/razorpay/NetworkType;->CELLULAR:Lcom/razorpay/NetworkType;
return-object p0
.line 418
:cond_42
sget-object p0, Lcom/razorpay/NetworkType;->UNKNOWN:Lcom/razorpay/NetworkType;
return-object p0
.end method
.method static getDeviceAttributes(Landroid/content/Context;)Ljava/util/Map;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
")",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 1146
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
const-string v1, "android.permission.READ_PHONE_STATE"
.line 1147
invoke-virtual {p0, v1}, Landroid/content/Context;->checkCallingOrSelfPermission(Ljava/lang/String;)I
move-result v1
const-string v2, "device_id"
const-string v3, "sim_serial_number"
if-nez v1, :cond_46
const-string v1, "phone"
.line 1149
invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/telephony/TelephonyManager;
.line 1150
invoke-static {p0}, Lcom/razorpay/BaseConfig;->getAdvertisingId(Landroid/content/Context;)Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, v2, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 1151
sget p0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x1c
if-gt p0, v2, :cond_33
if-eqz v1, :cond_2d
.line 1152
invoke-virtual {v1}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
move-result-object p0
goto :goto_2f
:cond_2d
const-string p0, "null"
:goto_2f
invoke-virtual {v0, v3, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_50
.line 1154
:cond_33
sget-object p0, Lcom/razorpay/BaseUtils;->PERMISSION_DISABLED:Ljava/lang/String;
invoke-virtual {v0, v3, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 1155
invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID;
move-result-object p0
invoke-virtual {p0}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object p0
const-string v1, "build_unique_id"
invoke-virtual {v0, v1, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_50
.line 1159
:cond_46
sget-object p0, Lcom/razorpay/BaseUtils;->PERMISSION_DISABLED:Ljava/lang/String;
invoke-virtual {v0, v2, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 1160
sget-object p0, Lcom/razorpay/BaseUtils;->PERMISSION_DISABLED:Ljava/lang/String;
invoke-virtual {v0, v3, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 1162
:goto_50
sget-object p0, Landroid/os/Build;->MANUFACTURER:Ljava/lang/String;
const-string v1, "device_manufacturer"
invoke-virtual {v0, v1, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 1163
sget-object p0, Landroid/os/Build;->MODEL:Ljava/lang/String;
const-string v1, "device_model"
invoke-virtual {v0, v1, p0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
return-object v0
.end method
.method static getDeviceParamValues(Landroid/content/Context;Lcom/razorpay/RzpJSONCallback;)V
.registers 4
.line 1222
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
.line 1225
:try_start_5
new-instance v1, Lcom/razorpay/c__C_;
invoke-direct {v1}, Lcom/razorpay/c__C_;-><init>()V
invoke-static {v1}, Lcom/razorpay/BaseUtils;->fetchIP(Lcom/razorpay/RzpJSONCallback;)V
.line 1237
new-instance v1, Lcom/razorpay/E$_6$;
invoke-direct {v1, v0, p0, p1}, Lcom/razorpay/E$_6$;-><init>(Lorg/json/JSONObject;Landroid/content/Context;Lcom/razorpay/RzpJSONCallback;)V
invoke-static {p0, v1}, Lcom/razorpay/AdvertisingIdUtil;->getId(Landroid/content/Context;Lcom/razorpay/AdvertisingIdUtil$AdvertisingIdCallback;)V
:try_end_15
.catch Ljava/lang/Exception; {:try_start_5 .. :try_end_15} :catch_16
return-void
:catch_16
move-exception p0
.line 1268
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p0
const-string v0, "S2"
invoke-static {p1, v0, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method static getDisplayHeight(Landroid/content/Context;)I
.registers 2
.line 876
new-instance v0, Landroid/util/DisplayMetrics;
invoke-direct {v0}, Landroid/util/DisplayMetrics;-><init>()V
.line 877
check-cast p0, Landroid/app/Activity;
invoke-virtual {p0}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager;
move-result-object p0
invoke-interface {p0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object p0
invoke-virtual {p0, v0}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V
.line 878
iget p0, v0, Landroid/util/DisplayMetrics;->heightPixels:I
return p0
.end method
.method static getDisplayResolution(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.line 954
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p0
invoke-virtual {p0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object p0
.line 955
sget-object v0, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale;
const/4 v1, 0x3
new-array v1, v1, [Ljava/lang/Object;
iget v2, p0, Landroid/util/DisplayMetrics;->widthPixels:I
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
const/4 v3, 0x0
aput-object v2, v1, v3
iget v2, p0, Landroid/util/DisplayMetrics;->heightPixels:I
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
const/4 v3, 0x1
aput-object v2, v1, v3
iget p0, p0, Landroid/util/DisplayMetrics;->densityDpi:I
.line 956
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
const/4 v2, 0x2
aput-object p0, v1, v2
const-string p0, "%dx%dx%d"
.line 955
invoke-static {v0, p0, v1}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static getDisplayWidth(Landroid/content/Context;)I
.registers 2
.line 870
new-instance v0, Landroid/util/DisplayMetrics;
invoke-direct {v0}, Landroid/util/DisplayMetrics;-><init>()V
.line 871
check-cast p0, Landroid/app/Activity;
invoke-virtual {p0}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager;
move-result-object p0
invoke-interface {p0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object p0
invoke-virtual {p0, v0}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V
.line 872
iget p0, v0, Landroid/util/DisplayMetrics;->widthPixels:I
return p0
.end method
.method static getFileFromInternal(Landroid/app/Activity;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 4
.line 769
invoke-static {p0, p2}, Lcom/razorpay/BaseUtils;->getLocalVersion(Landroid/app/Activity;Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/String;->toString()Ljava/lang/String;
move-result-object p2
.line 770
invoke-static {p2, p1}, Lcom/razorpay/BaseUtils;->getVersionedAssetName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
.line 771
invoke-virtual {p0, p1}, Landroid/app/Activity;->openFileInput(Ljava/lang/String;)Ljava/io/FileInputStream;
move-result-object p0
.line 772
new-instance p1, Ljava/io/BufferedReader;
new-instance p2, Ljava/io/InputStreamReader;
const-string v0, "UTF-8"
invoke-direct {p2, p0, v0}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/lang/String;)V
invoke-direct {p1, p2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
.line 774
new-instance p0, Ljava/lang/StringBuilder;
invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V
.line 776
:goto_21
invoke-virtual {p1}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object p2
if-eqz p2, :cond_2b
.line 777
invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_21
.line 779
:cond_2b
invoke-virtual {p1}, Ljava/io/BufferedReader;->close()V
.line 780
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {p0}, Lcom/razorpay/BaseUtils;->decryptFile(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static getGenericPaymentErrorResponse(Ljava/lang/String;)Ljava/lang/String;
.registers 4
.line 1313
:try_start_0
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
const-string v1, "code"
const-string v2, "BAD_REQUEST_ERROR"
.line 1314
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v1, "description"
.line 1315
invoke-virtual {v0, v1, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p0, "source"
const-string v1, "customer"
.line 1316
invoke-virtual {v0, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p0, "step"
const-string v1, "payment_authentication"
.line 1317
invoke-virtual {v0, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p0, "reason"
const-string v1, "payment_timeout"
.line 1318
invoke-virtual {v0, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 1320
new-instance p0, Lorg/json/JSONObject;
invoke-direct {p0}, Lorg/json/JSONObject;-><init>()V
const-string v1, "error"
invoke-virtual {p0, v1, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
move-result-object p0
invoke-virtual {p0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object p0
:try_end_35
.catch Lorg/json/JSONException; {:try_start_0 .. :try_end_35} :catch_36
return-object p0
:catch_36
move-exception p0
.line 1322
invoke-virtual {p0}, Lorg/json/JSONException;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0}, Lorg/json/JSONException;->getLocalizedMessage()Ljava/lang/String;
move-result-object p0
const-string v1, "S0"
invoke-static {v0, v1, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
const/4 p0, 0x0
return-object p0
.end method
.method static getJSONFromIntentData(Landroid/content/Intent;)Lorg/json/JSONObject;
.registers 6
.line 625
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
if-eqz p0, :cond_38
.line 627
invoke-virtual {p0}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
move-result-object p0
if-eqz p0, :cond_38
.line 629
invoke-virtual {p0}, Landroid/os/Bundle;->keySet()Ljava/util/Set;
move-result-object v1
.line 630
invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_15
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_38
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
.line 632
:try_start_21
invoke-virtual {p0, v2}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v3
invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:try_end_28
.catch Lorg/json/JSONException; {:try_start_21 .. :try_end_28} :catch_29
goto :goto_15
:catch_29
move-exception v2
.line 634
invoke-virtual {v2}, Lorg/json/JSONException;->getMessage()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2}, Lorg/json/JSONException;->getLocalizedMessage()Ljava/lang/String;
move-result-object v2
const-string v4, "error:exception"
invoke-static {v3, v4, v2}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_15
:cond_38
return-object v0
.end method
.method static getJsonValue(Ljava/lang/String;Lorg/json/JSONObject;Ljava/lang/Object;)Ljava/lang/Object;
.registers 4
const-string v0, "\\."
.line 703
invoke-virtual {p0, v0}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object p0
const/4 v0, 0x0
invoke-static {p0, p1, v0}, Lcom/razorpay/BaseUtils;->getJsonValue([Ljava/lang/String;Ljava/lang/Object;I)Ljava/lang/Object;
move-result-object p0
if-eqz p0, :cond_e
return-object p0
:cond_e
return-object p2
.end method
.method private static getJsonValue([Ljava/lang/String;Ljava/lang/Object;I)Ljava/lang/Object;
.registers 5
.line 740
:goto_0
array-length v0, p0
if-ne p2, v0, :cond_4
return-object p1
.line 743
:cond_4
aget-object v0, p0, p2
.line 744
instance-of v1, p1, Lorg/json/JSONObject;
if-eqz v1, :cond_13
.line 745
check-cast p1, Lorg/json/JSONObject;
.line 746
invoke-virtual {p1, v0}, Lorg/json/JSONObject;->opt(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
:goto_10
add-int/lit8 p2, p2, 0x1
goto :goto_0
.line 748
:cond_13
instance-of v1, p1, Lorg/json/JSONArray;
if-eqz v1, :cond_28
.line 749
check-cast p1, Lorg/json/JSONArray;
.line 750
invoke-static {v0}, Landroid/text/TextUtils;->isDigitsOnly(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_28
.line 751
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 752
invoke-virtual {p1, v0}, Lorg/json/JSONArray;->opt(I)Ljava/lang/Object;
move-result-object p1
goto :goto_10
:cond_28
const/4 p0, 0x0
return-object p0
.end method
.method static getKeyId(Landroid/content/Context;)Ljava/lang/String;
.registers 4
const/4 v0, 0x0
.line 181
:try_start_1
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object p0
const/16 v2, 0x80
invoke-virtual {v1, p0, v2}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object p0
.line 182
iget-object v1, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
if-nez v1, :cond_14
return-object v0
.line 185
:cond_14
iget-object p0, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
const-string v1, "com.razorpay.ApiKey"
invoke-virtual {p0, v1}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
:try_end_1c
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_1 .. :try_end_1c} :catch_1d
return-object p0
:catch_1d
move-exception p0
.line 189
invoke-virtual {p0}, Landroid/content/pm/PackageManager$NameNotFoundException;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Landroid/content/pm/PackageManager$NameNotFoundException;->getMessage()Ljava/lang/String;
move-result-object p0
const-string v2, "S0"
invoke-static {v1, v2, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.end method
.method static getListOfAppsWhichHandleDeepLink(Landroid/content/Context;Ljava/lang/String;)Ljava/util/List;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Landroid/content/pm/ResolveInfo;",
">;"
}
.end annotation
.line 597
new-instance v0, Landroid/content/Intent;
invoke-direct {v0}, Landroid/content/Intent;-><init>()V
.line 598
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
invoke-virtual {v0, p1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
.line 599
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
const/high16 p1, 0x20000
invoke-virtual {p0, v0, p1}, Landroid/content/pm/PackageManager;->queryIntentActivities(Landroid/content/Intent;I)Ljava/util/List;
move-result-object p0
return-object p0
.end method
.method static getLocalVersion(Landroid/app/Activity;Ljava/lang/String;)Ljava/lang/String;
.registers 2
.line 804
invoke-static {p0, p1}, Lcom/razorpay/m;->a(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
if-nez p0, :cond_c
const-string p0, "{\n \"hash\" : \"MD5\",\n \"magic_hash\": \"MD5\"\n}\n"
.line 807
invoke-static {p0, p1}, Lcom/razorpay/BaseUtils;->getVersionFromJsonString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
:cond_c
return-object p0
.end method
.method static getLocale()Ljava/lang/String;
.registers 2
.line 422
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v1
invoke-virtual {v1}, Ljava/util/Locale;->getLanguage()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, "-"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v1
invoke-virtual {v1}, Ljava/util/Locale;->getCountry()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method static getMapFromJSONObject(Lorg/json/JSONObject;)Ljava/util/HashMap;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lorg/json/JSONObject;",
")",
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 882
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
.line 884
:try_start_5
invoke-virtual {p0}, Lorg/json/JSONObject;->keys()Ljava/util/Iterator;
move-result-object v1
.line 885
:goto_9
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_2e
.line 886
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
.line 887
invoke-virtual {p0, v2}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
.line 888
invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_1c
.catch Ljava/lang/Exception; {:try_start_5 .. :try_end_1c} :catch_1d
goto :goto_9
:catch_1d
move-exception p0
.line 891
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v2
const-string v3, "error:exception"
invoke-static {v1, v3, v2}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 892
invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V
:cond_2e
return-object v0
.end method
.method static getNetworkType(Landroid/content/Context;)I
.registers 3
.line 323
invoke-static {p0}, Lcom/razorpay/BaseUtils;->getDataNetworkType(Landroid/content/Context;)Lcom/razorpay/NetworkType;
move-result-object v0
.line 324
sget-object v1, Lcom/razorpay/NetworkType;->WIFI:Lcom/razorpay/NetworkType;
if-ne v0, v1, :cond_a
const/4 p0, 0x0
return p0
.line 326
:cond_a
sget-object v1, Lcom/razorpay/NetworkType;->BLUETOOTH:Lcom/razorpay/NetworkType;
if-ne v0, v1, :cond_10
const/4 p0, 0x1
return p0
.line 328
:cond_10
sget-object v1, Lcom/razorpay/NetworkType;->CELLULAR:Lcom/razorpay/NetworkType;
if-ne v0, v1, :cond_36
.line 329
invoke-static {p0}, Lcom/razorpay/BaseUtils;->getCellularNetworkType(Landroid/content/Context;)Ljava/lang/String;
move-result-object p0
const-string v0, "2G"
.line 330
invoke-virtual {p0, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_22
const/4 p0, 0x2
return p0
:cond_22
const-string v0, "3G"
.line 332
invoke-virtual {p0, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_2c
const/4 p0, 0x3
return p0
:cond_2c
const-string v0, "4G"
.line 334
invoke-virtual {p0, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result p0
if-eqz p0, :cond_36
const/4 p0, 0x4
return p0
:cond_36
const/4 p0, -0x1
return p0
.end method
.method static getPaymentCancelledResponse(Ljava/lang/String;)Ljava/lang/String;
.registers 4
.line 1329
:try_start_0
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
const-string v1, "code"
const-string v2, "BAD_REQUEST_ERROR"
.line 1330
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v1, "description"
const-string v2, "Payment processing cancelled by user"
.line 1331
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v1, "source"
const-string v2, "customer"
.line 1332
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v1, "step"
const-string v2, "payment_authentication"
.line 1333
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v1, "reason"
const-string v2, "payment_cancelled"
.line 1334
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
if-eqz p0, :cond_3f
.line 1336
invoke-virtual {p0}, Ljava/lang/String;->isEmpty()Z
move-result v1
if-nez v1, :cond_3f
.line 1337
new-instance v1, Lorg/json/JSONObject;
invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V
const-string v2, "payment_id"
.line 1338
invoke-virtual {v1, v2, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p0, "metadata"
.line 1339
invoke-virtual {v0, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 1342
:cond_3f
new-instance p0, Lorg/json/JSONObject;
invoke-direct {p0}, Lorg/json/JSONObject;-><init>()V
const-string v1, "error"
invoke-virtual {p0, v1, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
move-result-object p0
invoke-virtual {p0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object p0
:try_end_4e
.catch Lorg/json/JSONException; {:try_start_0 .. :try_end_4e} :catch_4f
return-object p0
:catch_4f
move-exception p0
.line 1344
invoke-virtual {p0}, Lorg/json/JSONException;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0}, Lorg/json/JSONException;->getLocalizedMessage()Ljava/lang/String;
move-result-object p0
const-string v1, "S0"
invoke-static {v0, v1, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
const/4 p0, 0x0
return-object p0
.end method
.method static getRandomString()Ljava/lang/String;
.registers 3
.line 759
new-instance v0, Ljava/security/SecureRandom;
invoke-direct {v0}, Ljava/security/SecureRandom;-><init>()V
.line 760
new-instance v1, Ljava/math/BigInteger;
const/16 v2, 0x82
invoke-direct {v1, v2, v0}, Ljava/math/BigInteger;-><init>(ILjava/util/Random;)V
const/16 v0, 0x20
invoke-virtual {v1, v0}, Ljava/math/BigInteger;->toString(I)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method private static getResponseJson(Ljavax/net/ssl/HttpsURLConnection;)Lorg/json/JSONObject;
.registers 3
.line 1300
new-instance v0, Ljava/io/BufferedReader;
new-instance v1, Ljava/io/InputStreamReader;
.line 1301
invoke-virtual {p0}, Ljavax/net/ssl/HttpsURLConnection;->getInputStream()Ljava/io/InputStream;
move-result-object p0
invoke-direct {v1, p0}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
invoke-direct {v0, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
.line 1302
new-instance p0, Ljava/lang/StringBuilder;
invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V
.line 1304
:goto_13
invoke-virtual {v0}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_1d
.line 1305
invoke-virtual {p0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_13
.line 1307
:cond_1d
invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
.line 1308
new-instance v0, Lorg/json/JSONObject;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
return-object v0
.end method
.method static getSetOfPackageNamesSupportingUpi(Landroid/content/Context;)Ljava/util/HashSet;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
")",
"Ljava/util/HashSet<",
"Ljava/lang/String;",
">;"
}
.end annotation
const-string v0, "upi://pay"
.line 570
invoke-static {p0, v0}, Lcom/razorpay/BaseUtils;->getListOfAppsWhichHandleDeepLink(Landroid/content/Context;Ljava/lang/String;)Ljava/util/List;
move-result-object v0
.line 571
new-instance v1, Ljava/util/HashSet;
invoke-direct {v1}, Ljava/util/HashSet;-><init>()V
if-eqz v0, :cond_3a
.line 573
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v2
if-lez v2, :cond_3a
.line 575
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_17
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_3a
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroid/content/pm/ResolveInfo;
.line 577
:try_start_23
iget-object v2, v2, Landroid/content/pm/ResolveInfo;->activityInfo:Landroid/content/pm/ActivityInfo;
iget-object v2, v2, Landroid/content/pm/ActivityInfo;->packageName:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
:try_end_2a
.catch Ljava/lang/Exception; {:try_start_23 .. :try_end_2a} :catch_2b
goto :goto_17
:catch_2b
move-exception v2
.line 579
invoke-virtual {v2}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2}, Ljava/lang/Exception;->getLocalizedMessage()Ljava/lang/String;
move-result-object v2
const-string v4, "S0"
invoke-static {v3, v4, v2}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_17
.line 584
:cond_3a
invoke-virtual {v1}, Ljava/util/HashSet;->size()I
move-result v0
if-lez v0, :cond_4b
const-string v0, "com.google.android.apps.nbu.paisa.user"
invoke-static {p0, v0}, Lcom/razorpay/BaseUtils;->checkUpiRegisteredApp(Landroid/content/Context;Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_4b
.line 585
invoke-virtual {v1, v0}, Ljava/util/HashSet;->remove(Ljava/lang/Object;)Z
.line 589
:cond_4b
invoke-virtual {v1}, Ljava/util/HashSet;->size()I
move-result v0
if-lez v0, :cond_5c
const-string v0, "com.truecaller"
invoke-static {p0, v0}, Lcom/razorpay/BaseUtils;->checkUpiRegisteredApp(Landroid/content/Context;Ljava/lang/String;)Z
move-result p0
if-nez p0, :cond_5c
.line 590
invoke-virtual {v1, v0}, Ljava/util/HashSet;->remove(Ljava/lang/Object;)Z
:cond_5c
return-object v1
.end method
.method static getSignalStrength(Landroid/content/Context;)V
.registers 3
.line 1276
new-instance v0, Lcom/razorpay/O_$B_;
invoke-direct {v0}, Lcom/razorpay/O_$B_;-><init>()V
const-string v1, "phone"
.line 1277
invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/telephony/TelephonyManager;
const/16 v1, 0x100
.line 1279
invoke-virtual {p0, v0, v1}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
return-void
.end method
.method static getSystemService(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/Object;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Landroid/content/Context;",
"Ljava/lang/String;",
")TT;"
}
.end annotation
.line 308
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
invoke-virtual {p0, p1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
return-object p0
.end method
.method static getVersionFromJsonString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 3
.line 821
:try_start_0
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0, p0}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
const-string p0, "otpelf_version"
.line 822
invoke-virtual {p1, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result p0
if-eqz p0, :cond_14
const-string p0, "hash"
.line 823
invoke-virtual {v0, p0}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
return-object p0
:cond_14
const-string p0, "magic_version"
.line 824
invoke-virtual {p1, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result p0
if-eqz p0, :cond_23
const-string p0, "magic_hash"
.line 825
invoke-virtual {v0, p0}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
:try_end_22
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_22} :catch_23
return-object p0
:catch_23
:cond_23
const/4 p0, 0x0
return-object p0
.end method
.method static getVersionedAssetName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 4
const-string v0, "\\."
const-string v1, "-"
.line 799
invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
.line 800
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static getWebViewUserAgent(Landroid/content/Context;)Ljava/lang/CharSequence;
.registers 2
.line 450
new-instance v0, Landroid/webkit/WebView;
invoke-direct {v0, p0}, Landroid/webkit/WebView;-><init>(Landroid/content/Context;)V
invoke-virtual {v0}, Landroid/webkit/WebView;->getSettings()Landroid/webkit/WebSettings;
move-result-object p0
invoke-virtual {p0}, Landroid/webkit/WebSettings;->getUserAgentString()Ljava/lang/String;
move-result-object p0
invoke-static {p0}, Lcom/razorpay/AnalyticsUtil;->returnUndefinedIfNull(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
move-result-object p0
return-object p0
.end method
.method static getWifiSSID(Landroid/content/Context;)Ljava/lang/String;
.registers 2
const-string v0, "android.permission.ACCESS_WIFI_STATE"
.line 1169
invoke-virtual {p0, v0}, Landroid/content/Context;->checkCallingOrSelfPermission(Ljava/lang/String;)I
move-result v0
if-nez v0, :cond_1d
.line 1172
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
const-string v0, "wifi"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroid/net/wifi/WifiManager;
.line 1173
invoke-virtual {p0}, Landroid/net/wifi/WifiManager;->getConnectionInfo()Landroid/net/wifi/WifiInfo;
move-result-object p0
.line 1174
invoke-virtual {p0}, Landroid/net/wifi/WifiInfo;->getSSID()Ljava/lang/String;
move-result-object p0
return-object p0
.line 1176
:cond_1d
sget-object p0, Lcom/razorpay/BaseUtils;->PERMISSION_DISABLED:Ljava/lang/String;
return-object p0
.end method
.method static getX509Certificate(Landroid/net/http/SslCertificate;)Ljava/security/cert/Certificate;
.registers 4
.line 500
invoke-static {p0}, Landroid/net/http/SslCertificate;->saveState(Landroid/net/http/SslCertificate;)Landroid/os/Bundle;
move-result-object p0
const-string v0, "x509-certificate"
.line 501
invoke-virtual {p0, v0}, Landroid/os/Bundle;->getByteArray(Ljava/lang/String;)[B
move-result-object p0
const/4 v0, 0x0
if-nez p0, :cond_e
return-object v0
:cond_e
:try_start_e
const-string v1, "X.509"
.line 506
invoke-static {v1}, Ljava/security/cert/CertificateFactory;->getInstance(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
move-result-object v1
.line 507
new-instance v2, Ljava/io/ByteArrayInputStream;
invoke-direct {v2, p0}, Ljava/io/ByteArrayInputStream;-><init>([B)V
invoke-virtual {v1, v2}, Ljava/security/cert/CertificateFactory;->generateCertificate(Ljava/io/InputStream;)Ljava/security/cert/Certificate;
move-result-object p0
:try_end_1d
.catch Ljava/security/cert/CertificateException; {:try_start_e .. :try_end_1d} :catch_1e
return-object p0
:catch_1e
move-exception p0
.line 509
invoke-virtual {p0}, Ljava/security/cert/CertificateException;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Ljava/security/cert/CertificateException;->getLocalizedMessage()Ljava/lang/String;
move-result-object p0
const-string v2, "S0"
invoke-static {v1, v2, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.end method
.method static hasFeature(Landroid/content/Context;Ljava/lang/String;)Z
.registers 2
.line 300
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
invoke-virtual {p0, p1}, Landroid/content/pm/PackageManager;->hasSystemFeature(Ljava/lang/String;)Z
move-result p0
return p0
.end method
.method static hasPermission(Landroid/content/Context;Ljava/lang/String;)Z
.registers 4
const/4 v0, 0x0
.line 172
:try_start_1
invoke-virtual {p0, p1}, Landroid/content/Context;->checkCallingOrSelfPermission(Ljava/lang/String;)I
move-result p0
:try_end_5
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_5} :catch_a
if-nez p0, :cond_9
const/4 p0, 0x1
return p0
:cond_9
return v0
:catch_a
move-exception p0
.line 174
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p0
const-string v1, "S0"
invoke-static {p1, v1, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return v0
.end method
.method static installedApps(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.line 919
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 921
:try_start_5
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
const/4 v1, 0x0
.line 922
invoke-virtual {p0, v1}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
move-result-object p0
.line 924
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_12
:goto_12
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_35
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/content/pm/ApplicationInfo;
.line 925
iget v2, v1, Landroid/content/pm/ApplicationInfo;->flags:I
and-int/lit8 v2, v2, 0x1
if-nez v2, :cond_12
.line 926
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v2
if-eqz v2, :cond_2f
const-string v2, ","
.line 927
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 928
:cond_2f
iget-object v1, v1, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_12
.line 931
:cond_35
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
:try_end_39
.catchall {:try_start_5 .. :try_end_39} :catchall_3a
return-object p0
:catchall_3a
const-string p0, "Apps not available"
return-object p0
.end method
.method static isDeviceHaveCorrectTlsVersion()Z
.registers 6
const/4 v0, 0x0
.line 455
:try_start_1
invoke-static {}, Ljavax/net/ssl/SSLContext;->getDefault()Ljavax/net/ssl/SSLContext;
move-result-object v1
.line 456
invoke-virtual {v1}, Ljavax/net/ssl/SSLContext;->getDefaultSSLParameters()Ljavax/net/ssl/SSLParameters;
move-result-object v1
.line 457
invoke-virtual {v1}, Ljavax/net/ssl/SSLParameters;->getProtocols()[Ljava/lang/String;
move-result-object v1
if-nez v1, :cond_10
return v0
.line 461
:cond_10
array-length v2, v1
move v3, v0
:goto_12
if-ge v3, v2, :cond_39
aget-object v4, v1, v3
const-string v5, "TLS"
.line 462
invoke-virtual {v4, v5}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v5
if-eqz v5, :cond_28
const-string v5, "TLSv1"
.line 463
invoke-virtual {v4, v5}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v4
:try_end_24
.catch Ljava/security/NoSuchAlgorithmException; {:try_start_1 .. :try_end_24} :catch_2b
if-nez v4, :cond_28
const/4 v0, 0x1
return v0
:cond_28
add-int/lit8 v3, v3, 0x1
goto :goto_12
:catch_2b
move-exception v1
.line 469
invoke-virtual {v1}, Ljava/security/NoSuchAlgorithmException;->getMessage()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1}, Ljava/security/NoSuchAlgorithmException;->getMessage()Ljava/lang/String;
move-result-object v1
const-string v3, "S0"
invoke-static {v2, v3, v1}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:cond_39
return v0
.end method
.method static isMerchantAppDebuggable(Landroid/content/Context;)Z
.registers 1
.line 496
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object p0
iget p0, p0, Landroid/content/pm/ApplicationInfo;->flags:I
and-int/lit8 p0, p0, 0x2
if-eqz p0, :cond_c
const/4 p0, 0x1
return p0
:cond_c
const/4 p0, 0x0
return p0
.end method
.method private isMocked(Landroid/content/Context;Landroid/location/Location;)Z
.registers 3
.line 1126
invoke-virtual {p2}, Landroid/location/Location;->isFromMockProvider()Z
move-result p1
return p1
.end method
.method static isNetworkRoaming(Landroid/content/Context;)Z
.registers 2
const-string v0, "phone"
.line 1130
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 1132
invoke-virtual {p0}, Landroid/telephony/TelephonyManager;->isNetworkRoaming()Z
move-result p0
return p0
:cond_f
const/4 p0, 0x0
return p0
.end method
.method private static isUserRegisteredOnTruePay(Landroid/content/Context;)Ljava/lang/Boolean;
.registers 4
.line 544
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
new-instance v0, Landroid/content/ComponentName;
const-string v1, "com.truecaller"
const-string v2, "com.truecaller.truepay.UserRegistered"
invoke-direct {v0, v1, v2}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
.line 545
invoke-virtual {p0, v0}, Landroid/content/pm/PackageManager;->getComponentEnabledSetting(Landroid/content/ComponentName;)I
move-result p0
const/4 v0, 0x1
if-ne p0, v0, :cond_15
goto :goto_16
:cond_15
const/4 v0, 0x0
.line 547
:goto_16
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p0
:try_end_1a
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_1a} :catch_1b
return-object p0
:catch_1b
move-exception p0
.line 549
invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V
.line 550
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p0
const-string v1, "S1"
invoke-static {v0, v1, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 552
sget-object p0, Ljava/lang/Boolean;->FALSE:Ljava/lang/Boolean;
return-object p0
.end method
.method static jsonStringArrayToArrayList(Lorg/json/JSONArray;)Ljava/util/ArrayList;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lorg/json/JSONArray;",
")",
"Ljava/util/ArrayList<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 430
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
const/4 v1, 0x0
.line 431
:goto_6
invoke-virtual {p0}, Lorg/json/JSONArray;->length()I
move-result v2
if-ge v1, v2, :cond_16
.line 432
invoke-virtual {p0, v1}, Lorg/json/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 v1, v1, 0x1
goto :goto_6
:cond_16
return-object v0
.end method
.method static makeErrorPayload(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 5
.line 517
:try_start_0
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
.line 518
new-instance v1, Lorg/json/JSONObject;
invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V
const-string v2, "code"
.line 519
invoke-virtual {v1, v2, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p0, "description"
.line 520
invoke-virtual {v1, p0, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string p0, "error"
.line 521
invoke-virtual {v0, p0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 522
invoke-virtual {v0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object p0
:try_end_1d
.catch Lorg/json/JSONException; {:try_start_0 .. :try_end_1d} :catch_1e
return-object p0
:catch_1e
move-exception p0
.line 524
invoke-virtual {p0}, Lorg/json/JSONException;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {p0}, Lorg/json/JSONException;->getMessage()Ljava/lang/String;
move-result-object v0
const-string v1, "error:exception"
invoke-static {p1, v1, v0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 525
invoke-virtual {p0}, Lorg/json/JSONException;->printStackTrace()V
const-string p0, "{\"error\":{\"code\": \"BAD_REQUEST_ERROR\", \"description\": \"An unknown error occurred.\"}}"
return-object p0
.end method
.method static makeUrlEncodedPayload(Lorg/json/JSONObject;)Ljava/lang/String;
.registers 8
.line 902
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 903
invoke-virtual {p0}, Lorg/json/JSONObject;->keys()Ljava/util/Iterator;
move-result-object v1
.line 904
:goto_9
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
const/4 v3, 0x1
if-eqz v2, :cond_30
.line 905
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
.line 906
invoke-virtual {p0, v2}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
const/4 v5, 0x2
new-array v5, v5, [Ljava/lang/Object;
const/4 v6, 0x0
aput-object v2, v5, v6
.line 907
invoke-static {v4}, Landroid/net/Uri;->encode(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
aput-object v2, v5, v3
const-string v2, "%s=%s&"
invoke-static {v2, v5}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_9
.line 910
:cond_30
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result p0
sub-int/2addr p0, v3
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->deleteCharAt(I)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static nanoTimeToSecondsString(JI)Ljava/lang/String;
.registers 5
long-to-double p0, p0
const-wide v0, 0x41cdcd6500000000L # 1.0E9
div-double/2addr p0, v0
.line 491
invoke-static {p0, p1, p2}, Lcom/razorpay/BaseUtils;->round(DI)D
move-result-wide p0
.line 492
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, p0, p1}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static pdfDownloadHelper(Landroid/app/Activity;Ljava/lang/String;Ljava/lang/String;)V
.registers 5
const/4 v0, 0x0
.line 714
:try_start_1
invoke-virtual {p0, p1, v0}, Landroid/app/Activity;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream;
move-result-object v1
.line 715
invoke-static {p2, v0}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B
move-result-object p2
.line 716
invoke-virtual {v1, p2}, Ljava/io/FileOutputStream;->write([B)V
.line 717
invoke-virtual {v1}, Ljava/io/FileOutputStream;->close()V
:try_end_f
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_f} :catch_f
.line 722
:catch_f
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Landroid/app/Activity;->getFilesDir()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
const-string v0, "/"
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
const-string v0, ".pdf"
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
.line 723
new-instance v0, Ljava/io/File;
invoke-direct {v0, p2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 725
:try_start_39
invoke-virtual {p0}, Landroid/app/Activity;->getApplicationContext()Landroid/content/Context;
move-result-object p2
invoke-virtual {p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object p2
invoke-static {p0, p2, v0}, Landroidx/core/content/FileProvider;->getUriForFile(Landroid/content/Context;Ljava/lang/String;Ljava/io/File;)Landroid/net/Uri;
move-result-object p2
.line 726
new-instance v0, Landroid/content/Intent;
const-string v1, "android.intent.action.CREATE_DOCUMENT"
invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
const-string v1, "android.intent.category.OPENABLE"
.line 727
invoke-virtual {v0, v1}, Landroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;
const-string v1, "android.intent.extra.TITLE"
.line 728
invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
const-string p1, "application/pdf"
.line 729
invoke-virtual {v0, p2, p1}, Landroid/content/Intent;->setDataAndType(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/Intent;
.line 730
sget p1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 p2, 0x1a
if-lt p1, p2, :cond_6c
const-string p1, "android.provider.extra.INITIAL_URI"
const-string p2, "/Documents"
.line 731
invoke-static {p2}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p2
invoke-virtual {v0, p1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent;
:cond_6c
const/16 p1, 0x4d
.line 733
invoke-virtual {p0, v0, p1}, Landroid/app/Activity;->startActivityForResult(Landroid/content/Intent;I)V
:try_end_71
.catch Ljava/lang/Exception; {:try_start_39 .. :try_end_71} :catch_72
return-void
:catch_72
move-exception p0
.line 735
invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V
return-void
.end method
.method public static round(DI)D
.registers 4
if-ltz p2, :cond_12
.line 484
new-instance v0, Ljava/math/BigDecimal;
invoke-direct {v0, p0, p1}, Ljava/math/BigDecimal;-><init>(D)V
.line 485
sget-object p0, Ljava/math/RoundingMode;->HALF_UP:Ljava/math/RoundingMode;
invoke-virtual {v0, p2, p0}, Ljava/math/BigDecimal;->setScale(ILjava/math/RoundingMode;)Ljava/math/BigDecimal;
move-result-object p0
.line 486
invoke-virtual {p0}, Ljava/math/BigDecimal;->doubleValue()D
move-result-wide p0
return-wide p0
.line 482
:cond_12
new-instance p0, Ljava/lang/IllegalArgumentException;
invoke-direct {p0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p0
.end method
.method private static setBaseWebViewSettings()V
.registers 2
.line 246
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x13
if-lt v0, v1, :cond_b
.line 247
sget-boolean v0, Lcom/razorpay/BaseUtils;->sWebViewDebuggingEnabled:Z
invoke-static {v0}, Landroid/webkit/WebView;->setWebContentsDebuggingEnabled(Z)V
:cond_b
return-void
.end method
.method static setCompatibleWithGooglePay(Z)V
.registers 1
.line 898
sput-boolean p0, Lcom/razorpay/BaseUtils;->isCompatibleWithGooglePay:Z
return-void
.end method
.method static setIsGpayCardsUpiRegistered(Z)V
.registers 1
.line 1369
sput-boolean p0, Lcom/razorpay/BaseUtils;->isGpayCardsUpiRegistered:Z
return-void
.end method
.method static setWebViewSettings(Landroid/content/Context;Landroid/webkit/WebView;Z)V
.registers 9
.line 262
invoke-static {}, Lcom/razorpay/BaseUtils;->setBaseWebViewSettings()V
.line 263
invoke-static {p1}, Lcom/razorpay/BaseUtils;->enableJavaScriptInWebView(Landroid/webkit/WebView;)V
.line 264
invoke-static {}, Landroid/webkit/CookieManager;->getInstance()Landroid/webkit/CookieManager;
move-result-object v0
const/4 v1, 0x1
invoke-virtual {v0, v1}, Landroid/webkit/CookieManager;->setAcceptCookie(Z)V
const-string v0, ""
.line 265
invoke-virtual {p1, v0}, Landroid/webkit/WebView;->setTag(Ljava/lang/Object;)V
.line 267
invoke-virtual {p1}, Landroid/webkit/WebView;->getSettings()Landroid/webkit/WebSettings;
move-result-object v0
.line 269
invoke-virtual {v0, v1}, Landroid/webkit/WebSettings;->setDomStorageEnabled(Z)V
.line 271
invoke-virtual {v0, v1}, Landroid/webkit/WebSettings;->setDatabaseEnabled(Z)V
const/16 v2, 0x64
.line 272
invoke-virtual {v0, v2}, Landroid/webkit/WebSettings;->setTextZoom(I)V
.line 273
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v2
const-string v3, "database"
const/4 v4, 0x0
invoke-virtual {v2, v3, v4}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;
move-result-object v2
invoke-virtual {v2}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v2
.line 274
sget v3, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v5, 0x13
if-ge v3, v5, :cond_3a
.line 275
invoke-virtual {v0, v2}, Landroid/webkit/WebSettings;->setDatabasePath(Ljava/lang/String;)V
.line 277
:cond_3a
sget v3, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v5, 0x18
if-ge v3, v5, :cond_43
.line 278
invoke-virtual {v0, v2}, Landroid/webkit/WebSettings;->setGeolocationDatabasePath(Ljava/lang/String;)V
.line 281
:cond_43
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x15
if-lt v2, v3, :cond_50
.line 282
invoke-static {}, Landroid/webkit/CookieManager;->getInstance()Landroid/webkit/CookieManager;
move-result-object v2
.line 283
invoke-virtual {v2, p1, v1}, Landroid/webkit/CookieManager;->setAcceptThirdPartyCookies(Landroid/webkit/WebView;Z)V
:cond_50
if-eqz p2, :cond_56
const/4 p2, 0x2
.line 287
invoke-virtual {v0, p2}, Landroid/webkit/WebSettings;->setCacheMode(I)V
.line 290
:cond_56
invoke-virtual {v0, v4}, Landroid/webkit/WebSettings;->setSaveFormData(Z)V
.line 292
new-instance p2, Lcom/razorpay/o;
invoke-direct {p2, p0}, Lcom/razorpay/o;-><init>(Landroid/content/Context;)V
const-string p0, "StorageBridge"
invoke-virtual {p1, p2, p0}, Landroid/webkit/WebView;->addJavascriptInterface(Ljava/lang/Object;Ljava/lang/String;)V
return-void
.end method
.method static setup()V
.registers 0
.line 478
invoke-static {}, Lcom/razorpay/AnalyticsUtil;->reset()V
return-void
.end method
.method static startActivityForResult(Ljava/lang/String;Ljava/lang/String;Landroid/app/Activity;)V
.registers 5
.line 608
:try_start_0
new-instance v0, Landroid/content/Intent;
const-string v1, "android.intent.action.VIEW"
invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 609
invoke-static {p0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
if-eqz p1, :cond_19
.line 610
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
if-lez v1, :cond_19
.line 611
invoke-virtual {v0, p1}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
:cond_19
const-string p1, "credpay"
.line 613
invoke-virtual {p0, p1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result p0
if-eqz p0, :cond_27
const/16 p0, 0x14
.line 614
invoke-virtual {p2, v0, p0}, Landroid/app/Activity;->startActivityForResult(Landroid/content/Intent;I)V
goto :goto_39
:cond_27
const/16 p0, 0x63
.line 616
invoke-virtual {p2, v0, p0}, Landroid/app/Activity;->startActivityForResult(Landroid/content/Intent;I)V
:try_end_2c
.catch Landroid/content/ActivityNotFoundException; {:try_start_0 .. :try_end_2c} :catch_2d
return-void
:catch_2d
move-exception p0
.line 619
invoke-virtual {p0}, Landroid/content/ActivityNotFoundException;->getMessage()Ljava/lang/String;
move-result-object p0
const-string p1, "BaseUtils"
const-string p2, "S2"
invoke-static {p1, p2, p0}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:goto_39
return-void
.end method
.method static storeFileInInternal(Landroid/app/Activity;Ljava/lang/String;Ljava/lang/String;)Z
.registers 6
const/4 v0, 0x0
.line 838
:try_start_1
invoke-virtual {p0, p1, v0}, Landroid/app/Activity;->openFileOutput(Ljava/lang/String;I)Ljava/io/FileOutputStream;
move-result-object p0
.line 839
invoke-virtual {p2}, Ljava/lang/String;->getBytes()[B
move-result-object p2
invoke-virtual {p0, p2}, Ljava/io/FileOutputStream;->write([B)V
.line 840
invoke-virtual {p0}, Ljava/io/FileOutputStream;->close()V
:try_end_f
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_f} :catch_11
const/4 p0, 0x1
return p0
:catch_11
move-exception p0
.line 844
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p0
new-instance p2, Ljava/lang/StringBuilder;
const-string v1, "Error in saving file: "
invoke-direct {p2, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
const-string v2, "S1"
invoke-static {p0, v2, p2}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 845
new-instance p0, Ljava/lang/StringBuilder;
invoke-direct {p0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string p1, "com.razorpay.checkout"
.line 3047
invoke-static {p1, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
return v0
.end method
.method static updateLocalVersion(Landroid/app/Activity;Ljava/lang/String;Ljava/lang/String;)V
.registers 3
.line 833
invoke-static {p0, p1, p2}, Lcom/razorpay/m;->b(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
# virtual methods
.method getAccounts(Landroid/content/Context;)Ljava/lang/String;
.registers 6
const-string v0, "android.permission.GET_ACCOUNTS"
.line 1031
invoke-virtual {p1, v0}, Landroid/content/Context;->checkCallingOrSelfPermission(Ljava/lang/String;)I
move-result v0
if-nez v0, :cond_31
.line 1033
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "account"
.line 1035
invoke-virtual {p1, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/accounts/AccountManager;
.line 1036
invoke-virtual {p1}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
move-result-object p1
array-length v1, p1
const/4 v2, 0x0
:goto_1b
if-ge v2, v1, :cond_2c
aget-object v3, p1, v2
.line 1037
iget-object v3, v3, Landroid/accounts/Account;->name:Ljava/lang/String;
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v3, ","
.line 1038
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v2, v2, 0x1
goto :goto_1b
.line 1040
:cond_2c
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.line 1042
:cond_31
sget-object p1, Lcom/razorpay/BaseUtils;->PERMISSION_DISABLED:Ljava/lang/String;
return-object p1
.end method
.method getAvailableMemory(Landroid/content/Context;)Ljava/lang/String;
.registers 6
.line 988
new-instance v0, Landroid/app/ActivityManager$MemoryInfo;
invoke-direct {v0}, Landroid/app/ActivityManager$MemoryInfo;-><init>()V
const-string v1, "activity"
.line 990
invoke-virtual {p1, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/app/ActivityManager;
.line 991
invoke-virtual {p1, v0}, Landroid/app/ActivityManager;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V
.line 992
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
iget-wide v0, v0, Landroid/app/ActivityManager$MemoryInfo;->availMem:J
const-wide/32 v2, 0x100000
div-long/2addr v0, v2
invoke-static {v0, v1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
const-string v0, "MB"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method getBatteryLevel(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.line 1014
new-instance v0, Landroid/content/IntentFilter;
const-string v1, "android.intent.action.BATTERY_CHANGED"
invoke-direct {v0, v1}, Landroid/content/IntentFilter;-><init>(Ljava/lang/String;)V
const/4 v1, 0x0
invoke-virtual {p1, v1, v0}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
move-result-object p1
if-eqz p1, :cond_26
const-string v0, "level"
const/4 v1, -0x1
.line 1017
invoke-virtual {p1, v0, v1}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I
move-result v0
const-string v2, "scale"
.line 1018
invoke-virtual {p1, v2, v1}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I
move-result p1
int-to-float v0, v0
int-to-float p1, p1
div-float/2addr v0, p1
const/high16 p1, 0x42c80000 # 100.0f
mul-float/2addr v0, p1
.line 1019
invoke-static {v0}, Ljava/lang/String;->valueOf(F)Ljava/lang/String;
move-result-object p1
return-object p1
:cond_26
const-string p1, "Unknown"
return-object p1
.end method
.method getDeviceUptime()Ljava/lang/String;
.registers 4
.line 964
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
move-result-wide v1
invoke-static {v1, v2}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, "ms"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method getParentAppVersion(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.line 974
:try_start_0
invoke-virtual {p1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object p1
const/4 v1, 0x0
invoke-virtual {v0, p1, v1}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object p1
iget-object p1, p1, Landroid/content/pm/PackageInfo;->versionName:Ljava/lang/String;
:try_end_f
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_0 .. :try_end_f} :catch_10
return-object p1
:catch_10
move-exception p1
.line 977
invoke-virtual {p1}, Landroid/content/pm/PackageManager$NameNotFoundException;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1}, Landroid/content/pm/PackageManager$NameNotFoundException;->getMessage()Ljava/lang/String;
move-result-object p1
const-string v1, "error:exception"
invoke-static {v0, v1, p1}, Lcom/razorpay/AnalyticsUtil;->reportError(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
const-string p1, "Permission Disabled"
return-object p1
.end method
.method getRingtoneHash(Landroid/content/Context;)Ljava/lang/String;
.registers 3
const/4 v0, 0x1
.line 1088
invoke-static {p1, v0}, Landroid/media/RingtoneManager;->getActualDefaultRingtoneUri(Landroid/content/Context;I)Landroid/net/Uri;
move-result-object v0
.line 1090
invoke-static {p1, v0}, Landroid/media/RingtoneManager;->getRingtone(Landroid/content/Context;Landroid/net/Uri;)Landroid/media/Ringtone;
move-result-object v0
.line 1091
invoke-virtual {v0, p1}, Landroid/media/Ringtone;->getTitle(Landroid/content/Context;)Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Lcom/razorpay/BaseUtils;->MD5Hash(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method getScreenBrightness(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.line 1072
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p1
const-string v0, "screen_brightness"
invoke-static {p1, v0}, Landroid/provider/Settings$System;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method getScreenBrightnessMode(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.line 1063
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p1
const-string v0, "screen_brightness_mode"
invoke-static {p1, v0}, Landroid/provider/Settings$System;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method getScreenOffTimeout(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.line 1053
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p1
const-string v0, "screen_off_timeout"
invoke-static {p1, v0}, Landroid/provider/Settings$System;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
.line 1055
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
const-string v0, "ms"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method getSystemFontSize(Landroid/content/Context;)Ljava/lang/String;
.registers 2
.line 1121
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p1
invoke-virtual {p1}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object p1
iget p1, p1, Landroid/content/res/Configuration;->fontScale:F
invoke-static {p1}, Ljava/lang/String;->valueOf(F)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method getTotalInternalStorage()Ljava/lang/String;
.registers 5
.line 1000
invoke-static {}, Landroid/os/Environment;->getDataDirectory()Ljava/io/File;
move-result-object v0
.line 1001
new-instance v1, Landroid/os/StatFs;
invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v0}, Landroid/os/StatFs;-><init>(Ljava/lang/String;)V
.line 1002
invoke-virtual {v1}, Landroid/os/StatFs;->getBlockSizeLong()J
move-result-wide v2
.line 1003
invoke-virtual {v1}, Landroid/os/StatFs;->getBlockCountLong()J
move-result-wide v0
mul-long/2addr v0, v2
.line 1004
invoke-static {v0, v1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method getWallpaperID(Landroid/content/Context;)Ljava/lang/String;
.registers 7
.line 1077
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x18
if-lt v0, v1, :cond_2c
.line 1078
invoke-static {p1}, Landroid/app/WallpaperManager;->getInstance(Landroid/content/Context;)Landroid/app/WallpaperManager;
move-result-object p1
const/4 v0, 0x1
.line 1080
invoke-virtual {p1, v0}, Landroid/app/WallpaperManager;->getWallpaperId(I)I
move-result v1
const/4 v2, 0x2
.line 1081
invoke-virtual {p1, v2}, Landroid/app/WallpaperManager;->getWallpaperId(I)I
move-result p1
.line 1082
sget-object v3, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale;
new-array v2, v2, [Ljava/lang/Object;
const/4 v4, 0x0
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
aput-object p1, v2, v4
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
aput-object p1, v2, v0
const-string p1, "%d-%d"
invoke-static {v3, p1, v2}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
return-object p1
.line 1084
:cond_2c
sget-object p1, Lcom/razorpay/BaseUtils;->PERMISSION_DISABLED:Ljava/lang/String;
return-object p1
.end method