导航菜单

页面标题

页面副标题

FanCode v7.24.0 - VmaxCtaHandler.java 源代码

正在查看: FanCode v7.24.0 应用的 VmaxCtaHandler.java JAVA 源代码文件

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


package com.vmax.ng.internal;

import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.text.TextUtils;
import android.webkit.URLUtil;
import androidx.browser.customtabs.CustomTabsIntent;
import com.vmax.ng.error.VmaxCoreException;
import com.vmax.ng.utilities.Utility;
import com.vmax.ng.utilities.VmaxLogger;
import kotlin.Metadata;
import kotlin.jvm.internal.Intrinsics;
import kotlin.jvm.internal.SourceDebugExtension;
import kotlin.text.StringsKt__StringsKt;
import org.jetbrains.annotations.NotNull;

@Metadata
@SourceDebugExtension({"SMAP\nVmaxCtaHandler.kt\nKotlin\n*S Kotlin\n*F\n+ 1 VmaxCtaHandler.kt\ncom/vmax/ng/internal/VmaxCtaHandler\n+ 2 Strings.kt\nkotlin/text/StringsKt__StringsKt\n*L\n1#1,174:1\n107#2:175\n79#2,22:176\n*S KotlinDebug\n*F\n+ 1 VmaxCtaHandler.kt\ncom/vmax/ng/internal/VmaxCtaHandler\n*L\n25#1:175\n25#1:176,22\n*E\n"})
public final class VmaxCtaHandler {

    @NotNull
    public static final VmaxCtaHandler INSTANCE = new VmaxCtaHandler();

    private VmaxCtaHandler() {
    }

    public static final boolean performClick(@NotNull Context c, @NotNull String ctaUrl) throws VmaxCoreException {
        Intent intent;
        CustomTabsIntent customTabsIntent;
        VmaxLogger.Companion companion;
        boolean L;
        Intrinsics.checkNotNullParameter(c, "c");
        Intrinsics.checkNotNullParameter(ctaUrl, "ctaUrl");
        try {
            VmaxLogger.Companion.showDebugLog("Performing Ad click : " + ctaUrl);
        } catch (Exception unused) {
            throw new VmaxCoreException("Error while performing ad click");
        }
        if (!TextUtils.isEmpty(ctaUrl)) {
            Uri parse = Uri.parse(ctaUrl);
            int length = ctaUrl.length() - 1;
            int i = 0;
            boolean z = false;
            while (i <= length) {
                boolean z2 = Intrinsics.compare((int) ctaUrl.charAt(!z ? i : length), 32) <= 0;
                if (z) {
                    if (!z2) {
                        break;
                    }
                    length--;
                } else if (z2) {
                    i++;
                } else {
                    z = true;
                }
            }
            String obj = ctaUrl.subSequence(i, length + 1).toString();
            if (URLUtil.isHttpsUrl(obj) || URLUtil.isHttpUrl(obj)) {
                String packageName = Utility.INSTANCE.getPackageName(c);
                Intent intent2 = new Intent("android.intent.action.VIEW");
                intent2.setFlags(268435456);
                intent2.setPackage(packageName);
                intent2.setData(Uri.parse(obj));
                try {
                    c.startActivity(intent2);
                    VmaxLogger.Companion.showDebugLog("App itself can handle this intent");
                    return true;
                } catch (ActivityNotFoundException unused2) {
                }
            }
            boolean isChrometabAvailable = Utility.INSTANCE.isChrometabAvailable(c);
            VmaxLogger.Companion companion2 = VmaxLogger.Companion;
            companion2.showDebugLog("isChromeTab : " + isChrometabAvailable);
            if (isChrometabAvailable) {
                customTabsIntent = new CustomTabsIntent.b().b();
                customTabsIntent.intent.setFlags(268435456);
                customTabsIntent.intent.setPackage(Utility.CHROME_PACKAGE);
                intent = customTabsIntent.intent;
            } else {
                intent = new Intent("android.intent.action.VIEW");
                customTabsIntent = null;
            }
            try {
                if (Intrinsics.areEqual("sms", parse.getScheme())) {
                    String uri = parse.toString();
                    Intrinsics.checkNotNullExpressionValue(uri, "uri.toString()");
                    L = StringsKt__StringsKt.L(uri, ";", false, 2, null);
                    if (L) {
                        String uri2 = parse.toString();
                        Intrinsics.checkNotNullExpressionValue(uri2, "uri.toString()");
                        String uri3 = parse.toString();
                        Intrinsics.checkNotNullExpressionValue(uri3, "uri.toString()");
                        int Y = StringsKt__StringsKt.Y(uri3, "sms:", 0, false, 6, null);
                        String uri4 = parse.toString();
                        Intrinsics.checkNotNullExpressionValue(uri4, "uri.toString()");
                        String substring = uri2.substring(Y, StringsKt__StringsKt.Y(uri4, ";", 0, false, 6, null));
                        Intrinsics.checkNotNullExpressionValue(substring, "this as java.lang.String…ing(startIndex, endIndex)");
                        parse = Uri.parse(substring);
                        intent.setData(parse);
                        String decode = Uri.decode(parse.toString());
                        Intrinsics.checkNotNullExpressionValue(decode, "decode(uri.toString())");
                        String uri5 = parse.toString();
                        Intrinsics.checkNotNullExpressionValue(uri5, "uri.toString()");
                        String substring2 = decode.substring(StringsKt__StringsKt.Y(uri5, ";body=", 0, false, 6, null) + 6);
                        Intrinsics.checkNotNullExpressionValue(substring2, "this as java.lang.String).substring(startIndex)");
                        intent.putExtra("sms_body", substring2);
                    } else {
                        intent.setData(Uri.parse(parse.toString()));
                    }
                    if (isChrometabAvailable && (c instanceof Activity)) {
                        companion2.showDebugLog("Opening on chrometab");
                        Intrinsics.checkNotNull(customTabsIntent);
                        customTabsIntent.launchUrl(c, Uri.parse(parse.toString()));
                    }
                    intent.setFlags(268435456);
                    c.startActivity(intent);
                } else {
                    if (!Intrinsics.areEqual("tel", parse.getScheme())) {
                        String str = "Intent launched with chrometab";
                        if (!Intrinsics.areEqual("intent", parse.getScheme())) {
                            try {
                                if (isChrometabAvailable) {
                                    Intrinsics.checkNotNull(customTabsIntent);
                                    customTabsIntent.intent.setPackage(Utility.CHROME_PACKAGE);
                                    customTabsIntent.intent.setFlags(268435456);
                                    customTabsIntent.intent.setData(parse);
                                    customTabsIntent.launchUrl(c, parse);
                                } else {
                                    Intent intent3 = new Intent("android.intent.action.VIEW");
                                    intent3.setData(parse);
                                    intent3.setFlags(268435456);
                                    c.startActivity(intent3);
                                    str = "Intent launched with regular intent";
                                }
                                companion2.showDebugLog(str);
                                return true;
                            } catch (ActivityNotFoundException e) {
                                e.printStackTrace();
                                Intent intent4 = new Intent("android.intent.action.VIEW");
                                intent4.setData(parse);
                                intent4.setFlags(268435456);
                                c.startActivity(intent4);
                                VmaxLogger.Companion.showDebugLog("Intent launched with regular intent");
                                return true;
                            }
                        }
                        Intent parseUri = Intent.parseUri(obj, 1);
                        parseUri.setFlags(268435456);
                        try {
                            c.startActivity(parseUri);
                            return true;
                        } catch (ActivityNotFoundException unused3) {
                            String stringExtra = parseUri.getStringExtra("browser_fallback_url");
                            VmaxLogger.Companion.showDebugLog("Deeplink fallbackUrl=" + stringExtra);
                            Uri parse2 = Uri.parse(stringExtra);
                            if (isChrometabAvailable) {
                                Intrinsics.checkNotNull(customTabsIntent);
                                customTabsIntent.intent.setPackage(Utility.CHROME_PACKAGE);
                                customTabsIntent.intent.setData(parse2);
                                customTabsIntent.launchUrl(c, parse2);
                                companion = VmaxLogger.Companion;
                            } else {
                                Intent intent5 = new Intent("android.intent.action.VIEW");
                                intent5.setData(parse2);
                                intent5.setFlags(268435456);
                                c.startActivity(intent5);
                                companion = VmaxLogger.Companion;
                                str = "Deeplink fallback attempted";
                            }
                            companion.showDebugLog(str);
                            return true;
                        }
                        throw new VmaxCoreException("Error while performing ad click");
                    }
                    intent.setData(parse);
                    if (isChrometabAvailable && (c instanceof Activity)) {
                        companion2.showDebugLog("Opening on chrometab");
                        Intrinsics.checkNotNull(customTabsIntent);
                        customTabsIntent.launchUrl(c, Uri.parse(parse.toString()));
                    }
                    intent.setFlags(268435456);
                    c.startActivity(intent);
                }
            } catch (ActivityNotFoundException unused4) {
            }
        }
        return false;
    }
}