导航菜单

页面标题

页面副标题

SpeedCash v6.5.1482 - OpenWebViewActivity.java 源代码

正在查看: SpeedCash v6.5.1482 应用的 OpenWebViewActivity.java JAVA 源代码文件

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


package com.bm.sc.bebasbayar.ui.activity.info;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.http.SslError;
import android.os.Bundle;
import android.webkit.ConsoleMessage;
import android.webkit.GeolocationPermissions;
import android.webkit.SslErrorHandler;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.bm.sc.bebasbayar.R;
import com.bm.sc.bebasbayar.handler.FirebaseProcessor;
import com.bm.sc.bebasbayar.helper.Affinity;
import com.bm.sc.bebasbayar.setting.MenuConfig;
import com.bm.sc.bebasbayar.ui.BaseActivity;
import com.bm.sc.bebasbayar.ui.activity.info.OpenWebViewActivity;
import com.bm.sc.util.android.JSInterface;
import com.bm.sc.util.common.Var;

public class OpenWebViewActivity extends BaseActivity {
    public String c;
    public String d;
    public String e;

    public class a extends WebViewClient {
        public a() {
        }

        @Override
        public void onReceivedSslError(WebView webView, SslErrorHandler sslErrorHandler, SslError sslError) {
            if (Affinity.autoTrustUrl(OpenWebViewActivity.this, sslError.getCertificate()).booleanValue()) {
                sslErrorHandler.proceed();
            }
        }
    }

    public class b extends WebChromeClient {
        public final SwipeRefreshLayout a;

        public b(SwipeRefreshLayout swipeRefreshLayout) {
            this.a = swipeRefreshLayout;
        }

        @Override
        public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
            if (consoleMessage != null && consoleMessage.message() != null) {
                String message = consoleMessage.message();
                if (message.contains("speedcash_direction:")) {
                    String trim = message.substring(message.indexOf("speedcash_direction:") + 20).trim();
                    if (trim.startsWith("/")) {
                        trim = trim.substring(1);
                    }
                    String[] split = trim.split("/");
                    if (split.length >= 2) {
                        Class<? extends Activity> pathSelector = MenuConfig.pathSelector(split[0], split[1], "");
                        if (pathSelector != null) {
                            OpenWebViewActivity.this.startActivity(new Intent((Context) OpenWebViewActivity.this, (Class<?>) pathSelector));
                        } else {
                            Toast.makeText((Context) OpenWebViewActivity.this, (CharSequence) "Halaman tidak ditemukan", 0).show();
                        }
                    }
                }
            }
            return super.onConsoleMessage(consoleMessage);
        }

        @Override
        public void onGeolocationPermissionsShowPrompt(String str, GeolocationPermissions.Callback callback) {
            callback.invoke(str, true, false);
        }

        @Override
        public void onProgressChanged(WebView webView, int i) {
            if (i == 100) {
                this.a.setRefreshing(false);
            }
        }
    }

    public class c extends WebViewClient {
        public c() {
        }

        @Override
        public void onPageFinished(WebView webView, String str) {
            if (OpenWebViewActivity.this.getIntent().hasExtra("dynamic_title") && OpenWebViewActivity.this.getIntent().getBooleanExtra("dynamic_title", false)) {
                OpenWebViewActivity.this.setTitle(webView.getTitle());
            }
        }
    }

    public void q(SwipeRefreshLayout swipeRefreshLayout, WebView webView) {
        swipeRefreshLayout.setRefreshing(true);
        webView.loadUrl(this.c);
    }

    @Override
    public int getLayoutResource() {
        return R.layout.activity_item_view;
    }

    @Override
    public int getToolbarIconResource() {
        return R.drawable.ic_close_white_24dp;
    }

    @Override
    public String getWikiNameSpace() {
        return null;
    }

    @Override
    public boolean isEligibleForFavorit() {
        return false;
    }

    @Override
    @SuppressLint({"SetJavaScriptEnabled", "AddJavascriptInterface"})
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        final WebView webView = (WebView) findViewById(R.id.wb_new);
        if (getIntent().getExtras() != null) {
            Bundle extras = getIntent().getExtras();
            this.c = extras.getString("url");
            this.d = extras.getString(FirebaseProcessor.KEY_TITLE);
            this.e = Var.toString(extras.getString("interface:name"), "AjakTeman");
        }
        if (this.c == null) {
            this.c = "";
        }
        if (this.d == null) {
            this.d = "";
        }
        if (getSupportActionBar() != null) {
            setTitle(this.d);
            getSupportActionBar().setSubtitle(this.c);
        }
        webView.addJavascriptInterface(new JSInterface.BBJSInterface(this), this.e);
        webView.setInitialScale(1);
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setUseWideViewPort(true);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setDatabaseEnabled(true);
        webView.getSettings().setDomStorageEnabled(true);
        webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
        webView.getSettings().setSupportZoom(true);
        webView.getSettings().setBuiltInZoomControls(true);
        webView.getSettings().setDisplayZoomControls(false);
        webView.getSettings().setGeolocationEnabled(true);
        webView.setWebViewClient(new a());
        webView.loadUrl(this.c);
        final SwipeRefreshLayout swipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_open_wv);
        swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public final void onRefresh() {
                OpenWebViewActivity.this.q(swipeRefreshLayout, webView);
            }
        });
        webView.setWebChromeClient(new b(swipeRefreshLayout));
        webView.setWebViewClient(new c());
    }
}