导航菜单

页面标题

页面副标题

Baubap v3.9.7 - BrazeWebViewActivity.java 源代码

正在查看: Baubap v3.9.7 应用的 BrazeWebViewActivity.java JAVA 源代码文件

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


package com.braze.ui;

import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.webkit.ConsoleMessage;
import android.webkit.RenderProcessGoneDetail;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import androidx.activity.p;
import androidx.fragment.app.f0;
import com.braze.BrazeInternal;
import com.braze.Constants;
import com.braze.enums.Channel;
import com.braze.support.BrazeFileUtils;
import com.braze.support.BrazeLogger;
import com.braze.ui.actions.UriAction;
import com.braze.ui.support.ViewUtils;
import n30.s;

@SuppressLint({"SetJavaScriptEnabled"})
public class BrazeWebViewActivity extends f0 {
    public WebChromeClient createWebChromeClient() {
        return new WebChromeClient() {
            @Override
            public Bitmap getDefaultVideoPoster() {
                Bitmap createBitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
                xu.b.x(createBitmap, "createBitmap(1, 1, Bitmap.Config.ARGB_8888)");
                return createBitmap;
            }

            @Override
            public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
                xu.b.y(consoleMessage, "cm");
                BrazeLogger.brazelog$default(BrazeLogger.INSTANCE, this, (BrazeLogger.Priority) null, (Throwable) null, new BrazeWebViewActivity$createWebChromeClient$1$onConsoleMessage$1(consoleMessage), 3, (Object) null);
                return true;
            }
        };
    }

    public WebViewClient createWebViewClient() {
        return new WebViewClient() {
            private final Boolean handleUrlOverride(Context context, String str) {
                try {
                    if (s.T0(BrazeFileUtils.REMOTE_SCHEMES, Uri.parse(str).getScheme())) {
                        return null;
                    }
                    UriAction createUriActionFromUrlString = BrazeDeeplinkHandler.Companion.getInstance().createUriActionFromUrlString(str, BrazeWebViewActivity.this.getIntent().getExtras(), false, Channel.UNKNOWN);
                    if (createUriActionFromUrlString == null) {
                        return Boolean.FALSE;
                    }
                    createUriActionFromUrlString.execute(context);
                    BrazeWebViewActivity.this.finish();
                    return Boolean.TRUE;
                } catch (Exception e) {
                    BrazeLogger.INSTANCE.brazelog(this, BrazeLogger.Priority.E, e, new BrazeWebViewActivity$createWebViewClient$1$handleUrlOverride$1(str));
                    return null;
                }
            }

            @Override
            public boolean onRenderProcessGone(WebView webView, RenderProcessGoneDetail renderProcessGoneDetail) {
                xu.b.y(webView, "view");
                xu.b.y(renderProcessGoneDetail, "detail");
                BrazeLogger.brazelog$default(BrazeLogger.INSTANCE, this, BrazeLogger.Priority.I, (Throwable) null, BrazeWebViewActivity$createWebViewClient$1$onRenderProcessGone$1.INSTANCE, 2, (Object) null);
                return true;
            }

            @Override
            public boolean shouldOverrideUrlLoading(WebView webView, WebResourceRequest webResourceRequest) {
                xu.b.y(webView, "view");
                xu.b.y(webResourceRequest, "request");
                Context context = webView.getContext();
                xu.b.x(context, "view.context");
                String uri = webResourceRequest.getUrl().toString();
                xu.b.x(uri, "request.url.toString()");
                Boolean handleUrlOverride = handleUrlOverride(context, uri);
                return handleUrlOverride != null ? handleUrlOverride.booleanValue() : super.shouldOverrideUrlLoading(webView, webResourceRequest);
            }

            @Override
            public boolean shouldOverrideUrlLoading(WebView webView, String str) {
                xu.b.y(webView, "view");
                xu.b.y(str, Constants.BRAZE_WEBVIEW_URL_EXTRA);
                Context context = webView.getContext();
                xu.b.x(context, "view.context");
                Boolean handleUrlOverride = handleUrlOverride(context, str);
                return handleUrlOverride != null ? handleUrlOverride.booleanValue() : super.shouldOverrideUrlLoading(webView, str);
            }
        };
    }

    public void onCreate(Bundle bundle) {
        String string;
        super.onCreate(bundle);
        getWindow().setFlags(16777216, 16777216);
        if (BrazeInternal.INSTANCE.getConfigurationProvider(this).getShouldUseWindowFlagSecureInActivities()) {
            getWindow().setFlags(8192, 8192);
        }
        setContentView(R.layout.com_braze_webview_activity);
        WebView webView = (WebView) findViewById(R.id.com_braze_webview_activity_webview);
        webView.setLayerType(2, null);
        WebSettings settings = webView.getSettings();
        xu.b.x(settings, "webView.settings");
        settings.setAllowFileAccess(false);
        settings.setBuiltInZoomControls(true);
        settings.setJavaScriptEnabled(true);
        settings.setUseWideViewPort(true);
        settings.setLoadWithOverviewMode(true);
        settings.setDisplayZoomControls(false);
        settings.setDomStorageEnabled(true);
        Context applicationContext = getApplicationContext();
        xu.b.x(applicationContext, "this.applicationContext");
        if (ViewUtils.isDeviceInNightMode(applicationContext)) {
            int i = Build.VERSION.SDK_INT;
            if (i >= 33) {
                p.q(settings);
            } else if (i >= 29) {
                t2.a.i(settings);
            }
        }
        webView.setWebChromeClient(createWebChromeClient());
        webView.setWebViewClient(createWebViewClient());
        Bundle extras = getIntent().getExtras();
        if (extras == null || (string = extras.getString(Constants.BRAZE_WEBVIEW_URL_EXTRA)) == null) {
            return;
        }
        webView.loadUrl(string);
    }
}