导航菜单

页面标题

页面副标题

Dostt v1.0.89 - OpinionatedSoln.java 源代码

正在查看: Dostt v1.0.89 应用的 OpinionatedSoln.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.razorpay;

import android.animation.ValueAnimator;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import kotlin.Metadata;

@Metadata(d1 = {"\u0000D\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\u000e\n\u0002\b\u0006\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\r\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\n\bÆ\u0002\u0018\u00002\u00020\u0001:\u0003-./B\t\b\u0002¢\u0006\u0004\b\u0002\u0010\u0003J\u0017\u0010\u0007\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u0004H\u0002¢\u0006\u0004\b\u0007\u0010\bJ\u0017\u0010\f\u001a\u00020\u000b2\u0006\u0010\n\u001a\u00020\tH\u0002¢\u0006\u0004\b\f\u0010\rJ\u001f\u0010\u000f\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00042\u0006\u0010\u000e\u001a\u00020\u000bH\u0002¢\u0006\u0004\b\u000f\u0010\u0010J\u0015\u0010\u0011\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u0004¢\u0006\u0004\b\u0011\u0010\bJ\u001d\u0010\u0011\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00042\u0006\u0010\u0013\u001a\u00020\u0012¢\u0006\u0004\b\u0011\u0010\u0014J\u0015\u0010\u0015\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u0004¢\u0006\u0004\b\u0015\u0010\bJ\r\u0010\u0016\u001a\u00020\u0006¢\u0006\u0004\b\u0016\u0010\u0003J!\u0010\u001a\u001a\u0004\u0018\u00010\u00012\u0006\u0010\u0018\u001a\u00020\u00172\b\u0010\u0019\u001a\u0004\u0018\u00010\u000b¢\u0006\u0004\b\u001a\u0010\u001bR\"\u0010\u001c\u001a\u00020\t8\u0006@\u0006X\u0086\u000e¢\u0006\u0012\n\u0004\b\u001c\u0010\u001d\u001a\u0004\b\u001e\u0010\u001f\"\u0004\b \u0010!R\"\u0010\"\u001a\u00020\t8\u0006@\u0006X\u0086\u000e¢\u0006\u0012\n\u0004\b\"\u0010\u001d\u001a\u0004\b#\u0010\u001f\"\u0004\b$\u0010!R$\u0010'\u001a\u0012\u0012\u0004\u0012\u00020\u000b0%j\b\u0012\u0004\u0012\u00020\u000b`&8\u0002X\u0082\u0004¢\u0006\u0006\n\u0004\b'\u0010(R$\u0010)\u001a\u0012\u0012\u0004\u0012\u00020\u000b0%j\b\u0012\u0004\u0012\u00020\u000b`&8\u0002X\u0082\u0004¢\u0006\u0006\n\u0004\b)\u0010(R$\u0010*\u001a\u0012\u0012\u0004\u0012\u00020\t0%j\b\u0012\u0004\u0012\u00020\t`&8\u0002X\u0082\u0004¢\u0006\u0006\n\u0004\b*\u0010(R\u0016\u0010\u0013\u001a\u00020\u00128\u0002@\u0002X\u0082.¢\u0006\u0006\n\u0004\b\u0013\u0010+R\u0016\u0010,\u001a\u00020\t8\u0002@\u0002X\u0082\u000e¢\u0006\u0006\n\u0004\b,\u0010\u001d¨\u00060"}, d2 = {"Lcom/razorpay/OpinionatedSoln;", "", "<init>", "()V", "Landroid/app/Activity;", "activity", "LSh/J;", "checkEnvVariablesForProject", "(Landroid/app/Activity;)V", "", "isMinor", "", "getUpdatedVersionNumber", "(Z)Ljava/lang/String;", "version", "checkIfVersionUpdateExists", "(Landroid/app/Activity;Ljava/lang/String;)V", "integrationStatusCheck", "Lcom/razorpay/OpinionatedSoln$DismissCallback;", "dismissCallback", "(Landroid/app/Activity;Lcom/razorpay/OpinionatedSoln$DismissCallback;)V", "showDialog", "sendCallbackIfExists", "Landroid/content/Context;", "context", "fieldName", "getBuildConfigValue", "(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/Object;", "alertShownForStatus", "Z", "getAlertShownForStatus", "()Z", "setAlertShownForStatus", "(Z)V", "checkedForSubMinorVersion", "getCheckedForSubMinorVersion", "setCheckedForSubMinorVersion", "Ljava/util/ArrayList;", "Lkotlin/collections/ArrayList;", "dialogItemTitles", "Ljava/util/ArrayList;", "dialogItemSubTitles", "dialogItemStatus", "Lcom/razorpay/OpinionatedSoln$DismissCallback;", "callbackSent", "DismissCallback", "HandleDialogShowPreference", "MyListAdapter", "checkout_release"}, k = 1, mv = {1, 6, 0}, xi = 48)
public final class OpinionatedSoln {
    private static boolean alertShownForStatus;
    private static boolean callbackSent;
    private static boolean checkedForSubMinorVersion;
    private static DismissCallback dismissCallback;
    public static final OpinionatedSoln INSTANCE = new OpinionatedSoln();
    private static final ArrayList<String> dialogItemTitles = new ArrayList<>();
    private static final ArrayList<String> dialogItemSubTitles = new ArrayList<>();
    private static final ArrayList<Boolean> dialogItemStatus = new ArrayList<>();

    @Metadata(d1 = {"\u0000\u0010\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\bf\u0018\u00002\u00020\u0001J\u000f\u0010\u0003\u001a\u00020\u0002H&¢\u0006\u0004\b\u0003\u0010\u0004¨\u0006\u0005"}, d2 = {"Lcom/razorpay/OpinionatedSoln$DismissCallback;", "", "LSh/J;", "alertDismissed", "()V", "checkout_release"}, k = 1, mv = {1, 6, 0}, xi = 48)
    public interface DismissCallback {
        void alertDismissed();
    }

    @Metadata(d1 = {"\u0000\u0010\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\bf\u0018\u00002\u00020\u0001J\u000f\u0010\u0003\u001a\u00020\u0002H&¢\u0006\u0004\b\u0003\u0010\u0004¨\u0006\u0005"}, d2 = {"Lcom/razorpay/OpinionatedSoln$HandleDialogShowPreference;", "", "LSh/J;", "errorFound", "()V", "checkout_release"}, k = 1, mv = {1, 6, 0}, xi = 48)
    public interface HandleDialogShowPreference {
        void errorFound();
    }

    private OpinionatedSoln() {
    }

    private final void checkEnvVariablesForProject(Activity activity) {
        dialogItemTitles.add("Min SDK Version Check");
        dialogItemSubTitles.add("Min SDK Version Compatible");
        dialogItemStatus.add(Boolean.TRUE);
        showDialog(activity);
    }

    private final void checkIfVersionUpdateExists(final Activity activity, String version) {
        final kotlin.jvm.internal.I i = new kotlin.jvm.internal.I();
        AsyncTaskC1277e.a("https://mvnrepository.com/artifact/com.razorpay/checkout/" + version, new Callback() {
            @Override
            public final void run(ResponseObject responseObject) {
                OpinionatedSoln.m9checkIfVersionUpdateExists$lambda0(kotlin.jvm.internal.I.this, activity, responseObject);
            }
        });
    }

    public static final void m9checkIfVersionUpdateExists$lambda0(kotlin.jvm.internal.I versionUpdateExists, Activity activity, ResponseObject responseObject) {
        kotlin.jvm.internal.r.f(versionUpdateExists, "$versionUpdateExists");
        kotlin.jvm.internal.r.f(activity, "$activity");
        if (responseObject != null && responseObject.getResponseCode() == 200) {
            versionUpdateExists.a = true;
            dialogItemTitles.add("Version Upgrade Check");
            dialogItemSubTitles.add("A version update was found. Click here to go to docs");
            dialogItemStatus.add(Boolean.FALSE);
            INSTANCE.checkEnvVariablesForProject(activity);
            return;
        }
        if (!checkedForSubMinorVersion) {
            checkedForSubMinorVersion = true;
            OpinionatedSoln opinionatedSoln = INSTANCE;
            opinionatedSoln.checkIfVersionUpdateExists(activity, opinionatedSoln.getUpdatedVersionNumber(false));
        } else {
            versionUpdateExists.a = false;
            dialogItemTitles.add("Version Upgrade Check");
            dialogItemSubTitles.add("Running the latest version");
            dialogItemStatus.add(Boolean.TRUE);
            INSTANCE.checkEnvVariablesForProject(activity);
        }
    }

    private final String getUpdatedVersionNumber(boolean isMinor) {
        String str = (String) Aj.o.F0(BuildConfig.VERSION_NAME, new String[]{"."}, false, 0, 6, (Object) null).get(0);
        String str2 = (String) Aj.o.F0(BuildConfig.VERSION_NAME, new String[]{"."}, false, 0, 6, (Object) null).get(1);
        String str3 = (String) Aj.o.F0(BuildConfig.VERSION_NAME, new String[]{"."}, false, 0, 6, (Object) null).get(2);
        if (isMinor) {
            return str + '.' + (Integer.parseInt(str2) + 1) + ".0";
        }
        return str + '.' + str2 + '.' + (Integer.parseInt(str3) + 1);
    }

    public static final void m10showDialog$lambda1(Activity activity, AdapterView adapterView, View view, int i, long j) {
        kotlin.jvm.internal.r.f(activity, "$activity");
        if (i == 0) {
            Intent intent = new Intent("android.intent.action.VIEW");
            intent.setData(Uri.parse("https://razorpay.com/docs/payments/payment-gateway/android-integration/standard/#list-of-razorpay-android-standard-sdk-versions-last"));
            activity.startActivity(intent);
        }
    }

    public static final void m11showDialog$lambda2(DialogInterface dialogInterface) {
        INSTANCE.sendCallbackIfExists();
    }

    public static final void m12showDialog$lambda3(Activity activity, DialogInterface dialogInterface, int i) {
        kotlin.jvm.internal.r.f(activity, "$activity");
        BaseConfig.setOpinionatedSolnPreference(activity, Boolean.FALSE);
        Toast.makeText(activity, "Status will be shown in logs. RAZORPAY_SDK", 1).show();
        INSTANCE.sendCallbackIfExists();
    }

    public final boolean getAlertShownForStatus() {
        return alertShownForStatus;
    }

    public final Object getBuildConfigValue(Context context, String fieldName) {
        kotlin.jvm.internal.r.f(context, "context");
        try {
            Field field = fieldName != null ? Class.forName(context.getPackageName() + ".BuildConfig").getField(fieldName) : null;
            if (field != null) {
                return field.get(null);
            }
        } catch (ClassNotFoundException | IllegalAccessException | NoSuchFieldException unused) {
        }
        return null;
    }

    public final boolean getCheckedForSubMinorVersion() {
        return checkedForSubMinorVersion;
    }

    public final void integrationStatusCheck(Activity activity) {
        kotlin.jvm.internal.r.f(activity, "activity");
        checkIfVersionUpdateExists(activity, getUpdatedVersionNumber(true));
    }

    public final void sendCallbackIfExists() {
        DismissCallback dismissCallback2 = dismissCallback;
        if (dismissCallback2 == null || callbackSent) {
            return;
        }
        if (dismissCallback2 == null) {
            kotlin.jvm.internal.r.t("dismissCallback");
            dismissCallback2 = null;
        }
        dismissCallback2.alertDismissed();
        callbackSent = true;
    }

    public final void setAlertShownForStatus(boolean z) {
        alertShownForStatus = z;
    }

    public final void setCheckedForSubMinorVersion(boolean z) {
        checkedForSubMinorVersion = z;
    }

    public final void showDialog(final Activity activity) {
        kotlin.jvm.internal.r.f(activity, "activity");
        Object buildConfigValue = getBuildConfigValue(activity, "DEBUG");
        if (buildConfigValue == null) {
            CheckoutUtils.a();
            sendCallbackIfExists();
            return;
        }
        if (!((Boolean) buildConfigValue).booleanValue() || alertShownForStatus) {
            CheckoutUtils.a();
            sendCallbackIfExists();
            return;
        }
        AlertDialog.Builder builder = new AlertDialog.Builder(activity);
        View inflate = activity.getLayoutInflater().inflate(R.layout.sdk_integration_status, (ViewGroup) null);
        kotlin.jvm.internal.r.e(inflate, "activity.layoutInflater.…integration_status, null)");
        ListView listView = (ListView) inflate.findViewById(R.id.check_list);
        final ArrayList<String> arrayList = dialogItemTitles;
        final ArrayList<String> arrayList2 = dialogItemSubTitles;
        final ArrayList<Boolean> arrayList3 = dialogItemStatus;
        listView.setAdapter((ListAdapter) new ArrayAdapter<String>(activity, arrayList, arrayList2, arrayList3) {
            private final Activity a;
            private final ArrayList<String> b;
            private final ArrayList<String> c;
            private final ArrayList<Boolean> d;

            {
                super(activity, R.layout.single_item);
                kotlin.jvm.internal.r.f(activity, "context");
                kotlin.jvm.internal.r.f(arrayList, "itemTitles");
                kotlin.jvm.internal.r.f(arrayList2, "itemDescs");
                kotlin.jvm.internal.r.f(arrayList3, "status");
                this.a = activity;
                this.b = arrayList;
                this.c = arrayList2;
                this.d = arrayList3;
            }

            @Override
            public final int getCount() {
                return this.b.size();
            }

            @Override
            public final View getView(int position, View view, ViewGroup parent) {
                kotlin.jvm.internal.r.f(parent, "parent");
                LayoutInflater layoutInflater = this.a.getLayoutInflater();
                kotlin.jvm.internal.r.e(layoutInflater, "context.layoutInflater");
                View rowView = layoutInflater.inflate(R.layout.single_item, (ViewGroup) null, true);
                View findViewById = rowView.findViewById(R.id.tv_title);
                if (findViewById == null) {
                    throw new NullPointerException("null cannot be cast to non-null type android.widget.TextView");
                }
                TextView textView = (TextView) findViewById;
                View findViewById2 = rowView.findViewById(R.id.iv_check_mark);
                if (findViewById2 == null) {
                    throw new NullPointerException("null cannot be cast to non-null type android.widget.ImageView");
                }
                ImageView imageView = (ImageView) findViewById2;
                View findViewById3 = rowView.findViewById(R.id.tv_sub_item);
                if (findViewById3 == null) {
                    throw new NullPointerException("null cannot be cast to non-null type android.widget.TextView");
                }
                TextView textView2 = (TextView) findViewById3;
                textView.setText(this.b.get(position));
                Boolean bool = this.d.get(position);
                kotlin.jvm.internal.r.e(bool, "status[position]");
                if (bool.booleanValue()) {
                    imageView.setImageResource(R.drawable.ic_tick_mark);
                } else {
                    imageView.setImageResource(R.drawable.ic_alert);
                }
                textView2.setText(this.c.get(position));
                kotlin.jvm.internal.r.e(rowView, "rowView");
                return rowView;
            }
        });
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public final void onItemClick(AdapterView adapterView, View view, int i, long j) {
                OpinionatedSoln.m10showDialog$lambda1(activity, adapterView, view, i, j);
            }
        });
        builder.setView(inflate);
        builder.setOnDismissListener(new DialogInterface.OnDismissListener() {

            @Metadata(d1 = {"\u0000\"\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0005\b\u0086\u0003\u0018\u00002\u00020\u0001B\t\b\u0002¢\u0006\u0004\b\u0002\u0010\u0003J\u0019\u0010\u0007\u001a\u00020\u00062\b\u0010\u0005\u001a\u0004\u0018\u00010\u0004H\u0007¢\u0006\u0004\b\u0007\u0010\bJ\u000f\u0010\n\u001a\u00020\tH\u0007¢\u0006\u0004\b\n\u0010\u000bR\u0016\u0010\f\u001a\u00020\t8\u0002@\u0002X\u0082.¢\u0006\u0006\n\u0004\b\f\u0010\r¨\u0006\u000e"}, d2 = {"Lcom/razorpay/GlobalUrlConfig$Companion;", "", "<init>", "()V", "Lorg/json/JSONObject;", "urlConfig", "LSh/J;", "initiate", "(Lorg/json/JSONObject;)V", "Lcom/razorpay/GlobalUrlConfig;", "instance", "()Lcom/razorpay/GlobalUrlConfig;", "globalUrlConfig", "Lcom/razorpay/GlobalUrlConfig;", "core_release"}, k = 1, mv = {1, 6, 0}, xi = 48)
            public final class _3_ {
                private _3_() {
                }

                public _3_(byte b) {
                    this();
                }
            }

            final class _J_ implements ValueAnimator.AnimatorUpdateListener {
                private CircularProgressView a;

                _J_(CircularProgressView circularProgressView) {
                    this.a = circularProgressView;
                }

                @Override
                public final void onAnimationUpdate(ValueAnimator valueAnimator) {
                    this.a.startAngle = ((Float) valueAnimator.getAnimatedValue()).floatValue();
                    this.a.invalidate();
                }
            }

            @Override
            public final void onDismiss(DialogInterface dialogInterface) {
                OpinionatedSoln.m11showDialog$lambda2(dialogInterface);
            }
        });
        Iterator<Boolean> it = arrayList3.iterator();
        boolean z = true;
        while (it.hasNext()) {
            if (!it.next().booleanValue()) {
                z = false;
            }
        }
        if (z) {
            builder.setNegativeButton("Hide notification forever", new DialogInterface.OnClickListener() {
                @Override
                public final void onClick(DialogInterface dialogInterface, int i) {
                    OpinionatedSoln.m12showDialog$lambda3(activity, dialogInterface, i);
                }
            });
        }
        Boolean opinionatedSolnPreference = BaseConfig.getOpinionatedSolnPreference(activity);
        kotlin.jvm.internal.r.e(opinionatedSolnPreference, "getOpinionatedSolnPreference(activity)");
        if (opinionatedSolnPreference.booleanValue() || !z) {
            if (!z) {
                BaseConfig.setOpinionatedSolnPreference(activity, Boolean.TRUE);
            }
            AlertDialog show = builder.show();
            alertShownForStatus = true;
            new CountDownTimerC1273a(show).start();
            CheckoutUtils.a();
            return;
        }
        HashMap hashMap = new HashMap();
        Iterator<String> it2 = dialogItemTitles.iterator();
        while (it2.hasNext()) {
            String item = it2.next();
            kotlin.jvm.internal.r.e(item, "item");
            ArrayList<String> arrayList4 = dialogItemSubTitles;
            ArrayList<String> arrayList5 = dialogItemTitles;
            String str = arrayList4.get(arrayList5.indexOf(item));
            kotlin.jvm.internal.r.e(str, "dialogItemSubTitles[dial…ItemTitles.indexOf(item)]");
            hashMap.put(item, str);
            dialogItemStatus.get(arrayList5.indexOf(item)).booleanValue();
        }
        hashMap.toString();
        sendCallbackIfExists();
        CheckoutUtils.a();
    }

    public final void integrationStatusCheck(Activity activity, DismissCallback dismissCallback2) {
        kotlin.jvm.internal.r.f(activity, "activity");
        kotlin.jvm.internal.r.f(dismissCallback2, "dismissCallback");
        p$_5$.a().a(activity);
        CheckoutUtils.e(activity);
        callbackSent = false;
        dismissCallback = dismissCallback2;
        checkIfVersionUpdateExists(activity, getUpdatedVersionNumber(true));
    }
}