Picsart v24.6版本的 MD5 值为:21a61631d94e54da68d2ad9268b8b9d9

以下内容为反编译后的 g.java 源代码,内容仅作参考


package myobfuscated.n7;

import android.content.Context;
import android.graphics.Rect;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewParent;
import android.webkit.ValueCallback;
import android.webkit.WebView;
import com.amazon.aps.ads.util.adview.ApsAdViewBase;
import com.amazon.aps.shared.analytics.APSEventSeverity;
import com.amazon.aps.shared.analytics.APSEventType;
import com.amazon.device.ads.DTBAdBannerListener;
import com.amazon.device.ads.DTBAdMRAIDBannerController;
import com.amazon.device.ads.DTBAdMRAIDController;
import com.amazon.device.ads.DTBAdView;
import com.amazon.device.ads.DTBExpectedSizeProvider;
import com.amazon.device.ads.DTBMetricsConfiguration;
import com.amazon.device.ads.DtbCommonUtils;
import com.amazon.device.ads.DtbOmSdkSessionManager;
import com.amazon.device.ads.WebResourceOptions;
import com.amazon.device.ads.WebResourceService;
import java.util.Arrays;
import java.util.Date;
import java.util.Map;
import kotlin.jvm.internal.Intrinsics;
import myobfuscated.n7.d;
import myobfuscated.o7.b;
import org.jetbrains.annotations.NotNull;
public class g extends ApsAdViewBase implements n, j {
    @NotNull
    private final Context adViewContext;
    private final boolean localOnly;
    protected i webBridge;
    private m webClient;

    public g(@NotNull Context context) {
        super(context);
        Intrinsics.checkNotNullParameter(context, "context");
        this.localOnly = WebResourceOptions.isLocalSourcesOnly();
        this.adViewContext = context;
    }

    public static void d(g gVar, String str, ValueCallback valueCallback) {
        m325evaluateApsJavascript$lambda11$lambda10(gVar, str, valueCallback);
    }

    public static void e(g gVar, String str) {
        m327loadUrl$lambda9$lambda8(gVar, str);
    }

    public static final void m325evaluateApsJavascript$lambda11$lambda10(g this$0, String str, ValueCallback valueCallback) {
        Intrinsics.checkNotNullParameter(this$0, "this$0");
        super.evaluateJavascript(str, valueCallback);
    }

    private final long handleClick(MotionEvent motionEvent, long j) {
        if (j - this.timeClicked < 1000) {
            return this.timePressed;
        }
        if (j - this.timePressed < 500) {
            this.timeClicked = j;
            if (getMraidHandler() == null) {
                myobfuscated.o7.a.b(APSEventSeverity.FATAL, APSEventType.LOG, "Null controller instance onAdClick callback", null);
                return 0L;
            }
            DTBAdMRAIDController mraidHandler = getMraidHandler();
            Intrinsics.e(mraidHandler);
            mraidHandler.onAdClicked();
            return 0L;
        }
        return 0L;
    }

    public static final boolean m326initWebView$lambda3(g this$0, View view, MotionEvent motionEvent) {
        Intrinsics.checkNotNullParameter(this$0, "this$0");
        return this$0.detectAdClick(motionEvent);
    }

    public static final void m327loadUrl$lambda9$lambda8(g this$0, String url) {
        Intrinsics.checkNotNullParameter(this$0, "this$0");
        Intrinsics.checkNotNullParameter(url, "$url");
        try {
            super.loadUrl(url);
        } catch (Exception e) {
            APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
            APSEventType aPSEventType = APSEventType.EXCEPTION;
            String l = Intrinsics.l(url, "WebView crash noticed during super.loadUrl method. URL:");
            Intrinsics.checkNotNullParameter(this$0, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, l, e);
        }
    }

    @Override
    public void cleanup() {
        try {
            super.cleanup();
            removeJavascriptInterface("amzn_bridge");
            DtbOmSdkSessionManager omSdkManager = getOmSdkManager();
            if (omSdkManager != null) {
                omSdkManager.stopOmAdSession();
            }
            DTBAdMRAIDController mraidHandler = getMraidHandler();
            if (mraidHandler != null) {
                mraidHandler.cleanup();
            }
            setMraidHandler(null);
        } catch (RuntimeException e) {
            APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
            APSEventType aPSEventType = APSEventType.EXCEPTION;
            Intrinsics.checkNotNullParameter(this, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, "Error in ApsAdView cleanup", e);
        }
    }

    public boolean detectAdClick(MotionEvent motionEvent) {
        if (isVideo() || motionEvent == null) {
            return false;
        }
        int action = motionEvent.getAction();
        long time = new Date().getTime();
        if (action != 0) {
            time = action != 1 ? this.timePressed : handleClick(motionEvent, time);
        }
        this.timePressed = time;
        return false;
    }

    public void evaluateApsJavascript(String str, ValueCallback<String> valueCallback) {
        if (str == null) {
            return;
        }
        new Handler(Looper.getMainLooper()).post(new f(this, 0, str, valueCallback));
    }

    public void fetchAd(Bundle bundle) {
        fetchAd((String) null, bundle);
    }

    public void fetchAd(String str) {
        fetchAd(str, (Bundle) null);
    }

    public final void fetchAd(String str, Bundle bundle) {
        Bundle bundle2;
        long currentTimeMillis = System.currentTimeMillis();
        if (myobfuscated.mn2.k.n(str, null, false) || myobfuscated.mn2.k.n(str, "", false)) {
            str = bundle == null ? null : bundle.getString("bid_html_template", null);
        }
        DTBAdMRAIDController mraidListener = getMraidHandler();
        if (mraidListener != null) {
            d.a aVar = d.a;
            Intrinsics.checkNotNullParameter(mraidListener, "mraidHandler");
            String string = (str != null || bundle == null) ? str : bundle.getString("bid_html_template", null);
            if (bundle != null && (mraidListener instanceof DTBAdMRAIDBannerController)) {
                DTBAdBannerListener dTBAdBannerListener = ((DTBAdMRAIDBannerController) mraidListener).bannerListener;
                int i = bundle.getInt("expected_width", 0);
                int i2 = bundle.getInt("expected_height", 0);
                if (i2 > 0 && i > 0 && (dTBAdBannerListener instanceof DTBExpectedSizeProvider)) {
                    DTBExpectedSizeProvider dTBExpectedSizeProvider = (DTBExpectedSizeProvider) dTBAdBannerListener;
                    dTBExpectedSizeProvider.setExpectedWidth(i);
                    dTBExpectedSizeProvider.setExpectedHeight(i2);
                }
            }
            if (DTBMetricsConfiguration.getInstance().isFeatureEnabled("webviewAdInfo_feature") && bundle == null) {
                bundle2 = new Bundle();
                d.a.a(string, bundle2);
                bundle2.putString("amazon_ad_info", myobfuscated.ud0.d.b(new Object[]{bundle2.getString("bid_identifier"), bundle2.getString("hostname_identifier"), bundle2.getString("event_server_parameter")}, 3, "{bidID:'%s',aaxHost:'%s',pricePoint:'%s'}", "format(format, *args)"));
            } else {
                bundle2 = bundle;
            }
            if (bundle2 != null) {
                setBidId(bundle2.getString("bid_identifier"));
                setHostname(bundle2.getString("hostname_identifier"));
                setVideo(bundle2.getBoolean("video_flag"));
            }
            setStartTime(new Date().getTime());
            Intrinsics.checkNotNullParameter(this, "webView");
            Intrinsics.checkNotNullParameter(mraidListener, "mraidListener");
            try {
                StringBuilder sb = new StringBuilder();
                sb.append("<!DOCTYPE html><html><head>");
                sb.append("<script>");
                sb.append(aVar.b(getAdViewContext(), bundle));
                sb.append("</script>");
                Context context = getContext();
                Intrinsics.checkNotNullExpressionValue(context, "webView.context");
                aVar.c(context, getLocalOnly(), "aps-mraid", sb);
                Context context2 = getContext();
                Intrinsics.checkNotNullExpressionValue(context2, "webView.context");
                aVar.c(context2, getLocalOnly(), "dtb-m", sb);
                if (DtbOmSdkSessionManager.getFeatureEnableFlag()) {
                    Context context3 = getContext();
                    Intrinsics.checkNotNullExpressionValue(context3, "webView.context");
                    aVar.c(context3, getLocalOnly(), "omsdk-v1", sb);
                }
                sb.append("</head>");
                sb.append("<body style='margin:0;padding:0;'>");
                sb.append(str);
                sb.append("</body></html>");
                if (DTBMetricsConfiguration.getInstance().isFeatureEnabled("additional_webview_metric")) {
                    if (mraidListener instanceof DTBAdMRAIDBannerController) {
                        b.a.c("bannerCreativeRenderingStart", getBidId());
                    } else {
                        b.a.c("interstitialCreativeRenderingStart", getBidId());
                    }
                }
                loadDataWithBaseURL("https://c.amazon-adsystem.com/", sb.toString(), "text/html", "UTF-8", null);
            } catch (RuntimeException e) {
                APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
                APSEventType aPSEventType = APSEventType.EXCEPTION;
                Intrinsics.checkNotNullParameter(aVar, "<this>");
                myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, "Fail to execute fetchAd method with bundle", e);
            }
        }
        String bidId = getBidId();
        myobfuscated.p7.b bVar = new myobfuscated.p7.b();
        bVar.b(getBidId());
        myobfuscated.q7.l lVar = bVar.a;
        myobfuscated.q7.i iVar = lVar.h;
        if (iVar == null) {
            iVar = new myobfuscated.q7.i(null);
        }
        lVar.h = iVar;
        iVar.b = currentTimeMillis;
        b.a.a(bidId, bVar);
    }

    public void fetchAd(String str, @NotNull Map<String, ? extends Object> extra) {
        Intrinsics.checkNotNullParameter(extra, "extra");
        d.a aVar = d.a;
        Intrinsics.checkNotNullParameter(this, "webView");
        try {
            Bundle initializeEmptyBundle = DtbCommonUtils.initializeEmptyBundle();
            if (extra != null) {
                for (Map.Entry<String, ? extends Object> entry : extra.entrySet()) {
                    String key = entry.getKey();
                    Object value = entry.getValue();
                    if (value instanceof String) {
                        initializeEmptyBundle.putString(key, (String) value);
                    } else if (value instanceof Boolean) {
                        initializeEmptyBundle.putBoolean(key, ((Boolean) value).booleanValue());
                    } else if (value instanceof Integer) {
                        initializeEmptyBundle.putInt(key, ((Number) value).intValue());
                    } else if (value instanceof Long) {
                        initializeEmptyBundle.putLong(key, ((Number) value).longValue());
                    }
                }
            }
            fetchAd(str, initializeEmptyBundle);
        } catch (RuntimeException e) {
            APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
            APSEventType aPSEventType = APSEventType.EXCEPTION;
            Intrinsics.checkNotNullParameter(aVar, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, "Fail to execute fetchAd method with map bundle", e);
        }
    }

    public void fetchAd(Map<String, ? extends Object> map) {
        if (map == null) {
            throw new NullPointerException("null cannot be cast to non-null type kotlin.collections.Map<kotlin.String?, kotlin.Any>");
        }
        fetchAd((String) null, map);
    }

    public final void fetchAdWithLocation(String str) {
        Context context = getContext();
        if (context == null) {
            return;
        }
        d.a aVar = d.a;
        boolean localOnly = getLocalOnly();
        Intrinsics.checkNotNullParameter(context, "context");
        Intrinsics.checkNotNullParameter(this, "webView");
        try {
            StringBuilder sb = new StringBuilder();
            sb.append("<script>");
            sb.append(aVar.b(context, null));
            sb.append("</script>");
            aVar.c(context, localOnly, "aps-mraid", sb);
            sb.append("<script>");
            sb.append("window.location=\"");
            sb.append(str);
            sb.append("\";");
            sb.append("</script>");
            loadDataWithBaseURL("https://c.amazon-adsystem.com/", sb.toString(), "text/html", "UTF-8", null);
        } catch (RuntimeException e) {
            APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
            APSEventType aPSEventType = APSEventType.EXCEPTION;
            Intrinsics.checkNotNullParameter(aVar, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, "Fail to execute fetchAdWithLocation method", e);
        }
    }

    public final void getAdInfo(@NotNull String adhtml, @NotNull Bundle adInfoBundle) {
        Intrinsics.checkNotNullParameter(adhtml, "adhtml");
        Intrinsics.checkNotNullParameter(adInfoBundle, "adInfoBundle");
        d.a.a(adhtml, adInfoBundle);
    }

    @Override
    @NotNull
    public Context getAdViewContext() {
        return this.adViewContext;
    }

    @Override
    public DTBAdMRAIDController getApsMraidHandler() {
        return getMraidHandler();
    }

    public final boolean getLocalOnly() {
        return this.localOnly;
    }

    public final m getWebClient() {
        return this.webClient;
    }

    @Override
    public void initWebView() {
        super.initWebView();
        m lVar = new l(this);
        setWebViewClient(lVar);
        setWebClient(lVar);
        setAdViewScrollEnabled(false);
        i iVar = new i(this);
        this.webBridge = iVar;
        addJavascriptInterface(iVar, "amzn_bridge");
        WebResourceService.init();
        initLayoutListeners();
        setOnTouchListener(new e(this, 0));
    }

    @Override
    public boolean isTwoPartExpand() {
        if (getMraidHandler() != null) {
            DTBAdMRAIDController mraidHandler = getMraidHandler();
            if (mraidHandler != null) {
                return mraidHandler.isTwoPartExpand();
            }
            throw new NullPointerException("null cannot be cast to non-null type com.amazon.device.ads.DTBAdMRAIDController");
        }
        return false;
    }

    public final void loadLocalFile(@NotNull String filename, @NotNull StringBuilder sb) {
        Intrinsics.checkNotNullParameter(filename, "filename");
        Intrinsics.checkNotNullParameter(sb, "sb");
        d.a aVar = d.a;
        Context context = getContext();
        Intrinsics.checkNotNullExpressionValue(context, "context");
        aVar.c(context, this.localOnly, filename, sb);
    }

    @Override
    public void loadUrl(@NotNull String url) {
        Intrinsics.checkNotNullParameter(url, "url");
        try {
            m mVar = this.webClient;
            if (mVar == null) {
                return;
            }
            if (!mVar.a) {
                new Handler(Looper.getMainLooper()).post(new myobfuscated.h4.e(1, this, url));
                return;
            }
            APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
            APSEventType aPSEventType = APSEventType.LOG;
            String l = Intrinsics.l(url, "WebView is corrupted. loadUrl method will not be executed. URL:");
            Intrinsics.checkNotNullParameter(this, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, l, null);
        } catch (RuntimeException e) {
            APSEventSeverity aPSEventSeverity2 = APSEventSeverity.FATAL;
            APSEventType aPSEventType2 = APSEventType.EXCEPTION;
            Intrinsics.checkNotNullParameter(this, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity2, aPSEventType2, "Failed to execute loadUrl method", e);
        }
    }

    @Override
    public void onAdLeftApplication() {
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.onAdLeftApplication();
    }

    @Override
    public void onAdOpened() {
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.onAdOpened();
    }

    public final void onAdRemoved() {
        if (getMraidHandler() != null) {
            DTBAdMRAIDController mraidHandler = getMraidHandler();
            Intrinsics.e(mraidHandler);
            mraidHandler.onAdRemoved();
            return;
        }
        APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
        APSEventType aPSEventType = APSEventType.LOG;
        Intrinsics.checkNotNullParameter(this, "<this>");
        myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, "Null controller instance onAdRemoved", null);
    }

    @Override
    public void onCrash(@NotNull WebView webView, @NotNull StringBuilder errorInfo, @NotNull String errorDetail) {
        DtbOmSdkSessionManager omSdkManager;
        Intrinsics.checkNotNullParameter(webView, "webView");
        Intrinsics.checkNotNullParameter(errorInfo, "errorInfo");
        Intrinsics.checkNotNullParameter(errorDetail, "errorDetail");
        try {
            if (webView instanceof DTBAdView) {
                String userAgentString = ((DTBAdView) webView).getSettings().getUserAgentString();
                if (userAgentString != null) {
                    String format = String.format("webViewUserAgentInfo = %s;", Arrays.copyOf(new Object[]{userAgentString}, 1));
                    Intrinsics.checkNotNullExpressionValue(format, "format(format, *args)");
                    errorInfo.append(format);
                }
                if (getBidId() != null) {
                    String format2 = String.format("webViewBidId = %s;", Arrays.copyOf(new Object[]{getBidId()}, 1));
                    Intrinsics.checkNotNullExpressionValue(format2, "format(format, *args)");
                    errorInfo.append(format2);
                }
                onAdRemoved();
                if (getMraidHandler() != null && (omSdkManager = getOmSdkManager()) != null) {
                    omSdkManager.stopOmAdSession();
                }
                ViewParent parent = ((DTBAdView) webView).getParent();
                if (parent != null && (parent instanceof ViewGroup)) {
                    ((ViewGroup) parent).removeView(this);
                }
                DTBAdMRAIDController mraidHandler = getMraidHandler();
                if (mraidHandler != null) {
                    mraidHandler.onLoadError();
                    cleanup();
                }
                webView.removeAllViews();
            }
            String substring = errorDetail.substring(0, Math.min(100, errorDetail.length()));
            Intrinsics.checkNotNullExpressionValue(substring, "this as java.lang.String…ing(startIndex, endIndex)");
            String format3 = String.format("webViewErrorDetail = %s", Arrays.copyOf(new Object[]{substring}, 1));
            Intrinsics.checkNotNullExpressionValue(format3, "format(format, *args)");
            errorInfo.append(format3);
            APSEventSeverity aPSEventSeverity = APSEventSeverity.FATAL;
            APSEventType aPSEventType = APSEventType.EXCEPTION;
            String sb = errorInfo.toString();
            Intrinsics.checkNotNullParameter(this, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, sb, null);
        } catch (RuntimeException e) {
            APSEventSeverity aPSEventSeverity2 = APSEventSeverity.FATAL;
            APSEventType aPSEventType2 = APSEventType.EXCEPTION;
            String sb2 = errorInfo.toString();
            Intrinsics.checkNotNullParameter(this, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity2, aPSEventType2, sb2, e);
        }
    }

    @Override
    public void onExposureChange(int i, @NotNull Rect adViewRect) {
        Intrinsics.checkNotNullParameter(adViewRect, "adViewRect");
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.fireExposureChange(i, adViewRect);
    }

    @Override
    public void onLoadError() {
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.onLoadError();
    }

    @Override
    public void onPageFinished(@NotNull String url, WebView webView) {
        DtbOmSdkSessionManager omSdkManager;
        Intrinsics.checkNotNullParameter(url, "url");
        try {
            myobfuscated.m7.a.a(this, Intrinsics.l(url, "Page finished:"));
            if (webView instanceof DTBAdView) {
                if (kotlin.text.d.w(url, "MRAID_ENV", false)) {
                    onPageLoaded();
                } else if (url.equals("https://c.amazon-adsystem.com/")) {
                    if ((getMraidHandler() instanceof DTBAdMRAIDBannerController) && (omSdkManager = getOmSdkManager()) != null) {
                        omSdkManager.stopOmAdSession();
                        if (isVideo()) {
                            omSdkManager.initJavaScriptOmAdSession(this, url);
                        } else {
                            omSdkManager.initHtmlDisplayOmAdSession(this, url);
                        }
                        omSdkManager.registerAdView(this);
                        omSdkManager.startAdSession();
                    }
                    onPageLoaded();
                }
            }
        } catch (RuntimeException e) {
            APSEventSeverity aPSEventSeverity = APSEventSeverity.ERROR;
            APSEventType aPSEventType = APSEventType.EXCEPTION;
            Intrinsics.checkNotNullParameter(this, "<this>");
            myobfuscated.o7.a.b(aPSEventSeverity, aPSEventType, "Fail to execute onPageFinished method", e);
        }
    }

    public void onPageLoaded() {
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.onPageLoad();
    }

    @Override
    public void onPositionChanged(@NotNull Rect adViewRect) {
        Intrinsics.checkNotNullParameter(adViewRect, "adViewRect");
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.onPositionChanged(adViewRect);
    }

    @Override
    public void onViewabilityChanged(boolean z) {
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.onViewabilityChanged(z);
    }

    @Override
    public void setCurrentPositionProperty() {
        DTBAdMRAIDController mraidHandler = getMraidHandler();
        if (mraidHandler == null) {
            return;
        }
        mraidHandler.setCurrentPositionProperty();
    }

    public final void setIgnoreDetachment() {
        this.ignoreDetachment = true;
    }

    public final void setWebClient(m mVar) {
        if (mVar == null) {
            return;
        }
        this.webClient = mVar;
        setWebViewClient(mVar);
    }
}