导航菜单

页面标题

页面副标题

SpeedCash v6.5.1482 - HelpActivity.java 源代码

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

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


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

import android.annotation.SuppressLint;
import android.annotation.TargetApi;
import android.content.Intent;
import android.net.MailTo;
import android.net.Uri;
import android.net.http.SslError;
import android.os.Bundle;
import android.util.Base64;
import android.view.View;
import android.webkit.JavascriptInterface;
import android.webkit.JsPromptResult;
import android.webkit.JsResult;
import android.webkit.SslErrorHandler;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceError;
import android.webkit.WebResourceRequest;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ProgressBar;
import androidx.appcompat.widget.SearchView;
import com.bm.sc.bebasbayar.R;
import com.bm.sc.bebasbayar.helper.Affinity;
import com.bm.sc.bebasbayar.helper.Buttonizer;
import com.bm.sc.bebasbayar.iface.BBCallback;
import com.bm.sc.bebasbayar.setting.session.ConfigSession;
import com.bm.sc.bebasbayar.ui.BaseActivity;
import com.bm.sc.bebasbayar.ui.activity.info.HelpActivity;
import com.bm.sc.util.common.Var;
import de.timroes.axmlrpc.XMLRPCCallback;
import de.timroes.axmlrpc.XMLRPCClient;
import de.timroes.axmlrpc.XMLRPCException;
import de.timroes.axmlrpc.XMLRPCServerException;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap;

public class HelpActivity extends BaseActivity {
    public static final String PAGE_TAG = "page:tag";
    public String f;
    public String g;
    public WebView h;
    public XMLRPCClient i;
    public Button j;
    public EditText l;
    public ProgressBar m;
    public final String c = "help:bebasbayar:customer";
    public final String d = "/wiki/help/bebasbayar/customer/";
    public final String e = "wiki.getPageHTML";
    public final XMLRPCCallback k = new a();

    public class a implements XMLRPCCallback {
        public a() {
        }

        public void e(XMLRPCException xMLRPCException) {
            Buttonizer.reset(HelpActivity.this.j);
            HelpActivity helpActivity = HelpActivity.this;
            helpActivity.G(helpActivity.f, xMLRPCException.getMessage());
        }

        public void f(Object obj) {
            Buttonizer.reset(HelpActivity.this.j);
            if (obj instanceof String) {
                if (!obj.toString().isEmpty()) {
                    HelpActivity.this.H(obj.toString());
                    return;
                } else {
                    ?? r4 = HelpActivity.this;
                    r4.G("404", r4.getString(R.string.warning_empty_page));
                    return;
                }
            }
            if (!(obj instanceof Object[])) {
                HelpActivity helpActivity = HelpActivity.this;
                helpActivity.G(helpActivity.g, HelpActivity.this.getString(R.string.warning_empty_list));
                return;
            }
            Object[] objArr = (Object[]) obj;
            if (objArr.length <= 0) {
                HelpActivity helpActivity2 = HelpActivity.this;
                helpActivity2.G(helpActivity2.g, HelpActivity.this.getString(R.string.warning_empty_list));
                return;
            }
            String F = HelpActivity.this.F(objArr);
            if (!F.isEmpty()) {
                HelpActivity.this.H(F);
            } else {
                HelpActivity helpActivity3 = HelpActivity.this;
                helpActivity3.G(helpActivity3.g, HelpActivity.this.getString(R.string.warning_empty_list));
            }
        }

        public void g(final Object obj) {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.a.this.f(obj);
                }
            });
        }

        public void h(XMLRPCServerException xMLRPCServerException) {
            Buttonizer.reset(HelpActivity.this.j);
            HelpActivity helpActivity = HelpActivity.this;
            helpActivity.G(helpActivity.f, xMLRPCServerException.getMessage());
        }

        public void onError(long j, final XMLRPCException xMLRPCException) {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.a.this.e(xMLRPCException);
                }
            });
        }

        public void onResponse(long j, final Object obj) {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.a.this.g(obj);
                }
            });
        }

        public void onServerError(long j, final XMLRPCServerException xMLRPCServerException) {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.a.this.h(xMLRPCServerException);
                }
            });
        }
    }

    public class b extends WebChromeClient {
        public b() {
        }

        public static void d(JsResult jsResult, int i, Boolean bool) {
            if (bool.booleanValue()) {
                jsResult.confirm();
            } else {
                jsResult.cancel();
            }
        }

        @Override
        public boolean onJsAlert(WebView webView, String str, String str2, final JsResult jsResult) {
            SearchView.OnQueryTextListener onQueryTextListener = HelpActivity.this;
            Affinity.info(onQueryTextListener, 2, onQueryTextListener.getString(R.string.title_warning), str2, new BBCallback() {
                @Override
                public final void do_callback(int i, Object obj) {
                    jsResult.confirm();
                }
            });
            return true;
        }

        @Override
        public boolean onJsConfirm(WebView webView, String str, String str2, final JsResult jsResult) {
            SearchView.OnQueryTextListener onQueryTextListener = HelpActivity.this;
            Affinity.confirm(onQueryTextListener, onQueryTextListener.getString(R.string.title_warning), str2, new BBCallback() {
                @Override
                public final void do_callback(int i, Object obj) {
                    HelpActivity.b.d(jsResult, i, (Boolean) obj);
                }
            });
            return true;
        }

        @Override
        public boolean onJsPrompt(WebView webView, String str, String str2, String str3, JsPromptResult jsPromptResult) {
            return super.onJsPrompt(webView, str, str2, str3, jsPromptResult);
        }

        @Override
        public void onProgressChanged(WebView webView, int i) {
            if (HelpActivity.this.m != null) {
                HelpActivity.this.m.setProgress(i);
            }
            super.onProgressChanged(webView, i);
        }
    }

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

        @Override
        public void onPageFinished(WebView webView, String str) {
            if (HelpActivity.this.m != null) {
                HelpActivity.this.m.setVisibility(8);
            }
            super.onPageFinished(webView, str);
        }

        @Override
        public void onReceivedError(WebView webView, int i, String str, String str2) {
            HelpActivity helpActivity = HelpActivity.this;
            helpActivity.G(helpActivity.f, str);
        }

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

        @Override
        public boolean shouldOverrideUrlLoading(WebView webView, String str) {
            String str2 = ((BaseActivity) HelpActivity.this).configSession.retrieveMap(ConfigSession.PROPERTY_WIKI, ConfigSession.KEY_WIKI_BASE) + "/wiki/help/bebasbayar/customer/";
            if (str.startsWith(str2)) {
                HelpActivity.this.J(str.replace(str2, "").replace("/", ":"));
                return false;
            }
            if (str.startsWith("tel:")) {
                webView.getContext().startActivity(new Intent("android.intent.action.DIAL", Uri.parse(str)));
                return true;
            }
            if (!str.startsWith("mailto:")) {
                webView.getContext().startActivity(new Intent("android.intent.action.VIEW", Uri.parse(str)));
                return true;
            }
            Intent intent = new Intent("android.intent.action.SEND");
            MailTo parse = MailTo.parse(str);
            intent.setType("application/octet-stream");
            intent.putExtra("android.intent.extra.EMAIL", new String[]{parse.getTo()});
            intent.putExtra("android.intent.extra.SUBJECT", parse.getSubject());
            intent.putExtra("android.intent.extra.TEXT", parse.getBody());
            webView.getContext().startActivity(intent);
            return true;
        }

        @Override
        @TargetApi(23)
        public void onReceivedError(WebView webView, WebResourceRequest webResourceRequest, WebResourceError webResourceError) {
            onReceivedError(webView, webResourceError.getErrorCode(), webResourceError.getDescription().toString(), webResourceRequest.getUrl().toString());
        }

        @Override
        @TargetApi(24)
        public boolean shouldOverrideUrlLoading(WebView webView, WebResourceRequest webResourceRequest) {
            return shouldOverrideUrlLoading(webView, webResourceRequest.getUrl().toString());
        }
    }

    public class d implements XMLRPCCallback {
        public d() {
        }

        public void d(XMLRPCException xMLRPCException) {
            HelpActivity helpActivity = HelpActivity.this;
            helpActivity.G(helpActivity.f, xMLRPCException.getMessage());
        }

        public void e(Object obj) {
            if (!Var.toBoolean(obj, false) || HelpActivity.this.i == null) {
                HelpActivity helpActivity = HelpActivity.this;
                helpActivity.G(helpActivity.f, "Help Credential Violated");
                return;
            }
            Buttonizer.reset(HelpActivity.this.j);
            Bundle extras = HelpActivity.this.getIntent().getExtras();
            if (extras == null) {
                HelpActivity.this.I();
                return;
            }
            String var = Var.toString(extras.get(HelpActivity.PAGE_TAG), "");
            if (var.isEmpty()) {
                HelpActivity.this.I();
            } else {
                HelpActivity.this.L(var);
            }
        }

        public void f(XMLRPCServerException xMLRPCServerException) {
            HelpActivity helpActivity = HelpActivity.this;
            helpActivity.G(helpActivity.f, xMLRPCServerException.getMessage());
        }

        public void onError(long j, final XMLRPCException xMLRPCException) {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.d.this.d(xMLRPCException);
                }
            });
        }

        public void onResponse(long j, final Object obj) {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.d.this.e(obj);
                }
            });
        }

        public void onServerError(long j, final XMLRPCServerException xMLRPCServerException) {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.d.this.f(xMLRPCServerException);
                }
            });
        }
    }

    public class e {
        public e() {
        }

        public void b() {
            HelpActivity.this.onBackPressed();
        }

        @JavascriptInterface
        public void exit() {
            HelpActivity.this.runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    HelpActivity.e.this.b();
                }
            });
        }

        public e(HelpActivity helpActivity, a aVar) {
            this();
        }
    }

    public final void E() {
        URL url;
        try {
            url = new URL(this.configSession.retrieveMap(ConfigSession.PROPERTY_WIKI, ConfigSession.KEY_WIKI_PATH));
        } catch (MalformedURLException e2) {
            e2.printStackTrace();
            url = null;
        }
        if (url != null) {
            XMLRPCClient xMLRPCClient = new XMLRPCClient(url, System.getProperty("http.agent"), 132);
            this.i = xMLRPCClient;
            xMLRPCClient.setCustomHttpHeader("Authorization", "Basic " + new String(Base64.encode("scteam:scteam2015".getBytes(), 0)));
            this.i.callAsync(new d(), "dokuwiki.login", new Object[]{this.configSession.retrieveMap(ConfigSession.PROPERTY_WIKI, ConfigSession.KEY_WIKI_USER), this.configSession.retrieveMap(ConfigSession.PROPERTY_WIKI, ConfigSession.KEY_WIKI_PASS)});
        }
    }

    public final String F(Object[] objArr) {
        StringBuilder sb = new StringBuilder();
        for (Object obj : objArr) {
            if (obj instanceof HashMap) {
                HashMap hashMap = (HashMap) obj;
                String ignoreBound = Var.getIgnoreBound(Var.toString(hashMap.get("id"), "").split(":"), 3, "");
                if (!ignoreBound.equals("start")) {
                    String replace = ignoreBound.replace("_", " ");
                    String replace2 = Var.toString(hashMap.get("snippet"), "").replace("\\^", "").replace("\\|", "<br>");
                    sb.append("<li class=\"level1\">");
                    sb.append("<div class=\"li\">");
                    sb.append("<a href=\"");
                    sb.append("/wiki/help/bebasbayar/customer/");
                    sb.append(ignoreBound);
                    sb.append("\" class=\"wikilink1\">Tentang ");
                    sb.append(replace);
                    sb.append("</a><br><span>");
                    sb.append(replace2);
                    sb.append("</span></div></li>");
                }
            }
        }
        return sb.toString();
    }

    public final void G(String str, String str2) {
        String str3 = "<center>" + str2 + "</center>";
        try {
            InputStream open = getAssets().open("error.html");
            byte[] bArr = new byte[open.available()];
            open.read(bArr);
            open.close();
            str3 = new String(bArr).replace("{{error}}", str2).replace("{{title}}", str);
        } catch (IOException unused) {
        }
        String str4 = str3;
        WebView webView = this.h;
        if (webView != null) {
            webView.loadDataWithBaseURL("", str4, "text/html", "UTF-8", "");
        }
    }

    public final void H(String str) {
        WebView webView = this.h;
        if (webView != null) {
            webView.loadDataWithBaseURL(this.configSession.retrieveMap(ConfigSession.PROPERTY_WIKI, ConfigSession.KEY_WIKI_BASE), str, "text/html", "UTF-8", "");
        }
    }

    public final void I() {
        J("start");
    }

    public final void J(String str) {
        K("wiki.getPageHTML", "help:bebasbayar:customer:" + str);
    }

    public final void K(String str, String str2) {
        if (this.i != null) {
            this.l.setText("");
            Buttonizer.loading(this.j);
            H("<center>mengambil data dari server...</center>");
            this.i.callAsync(this.k, str, new Object[]{str2});
        }
    }

    public final void L(String str) {
        K("wiki.getPageHTML", "help:bebasbayar:app:mandroid:" + str);
    }

    @Override
    public String getClassSimpleName() {
        return ConfigSession.KEY_URL_HELP;
    }

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

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

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

    @Override
    public void onClick(View view) {
        if (view.getId() != 2131362413) {
            super.onClick(view);
            return;
        }
        String obj = this.l.getText().toString();
        if (obj.trim().isEmpty()) {
            Affinity.toast(this, "Silakan isi kata kunci pencarian");
            return;
        }
        K("dokuwiki.search", obj + " @help:bebasbayar:customer");
    }

    @Override
    @SuppressLint({"SetJavaScriptEnabled", "AddJavascriptInterface"})
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        this.m = (ProgressBar) findViewById(R.id.progress_bar);
        this.f = getString(R.string.error_connection_timeout);
        this.g = getString(R.string.label_search_result);
        WebView webView = (WebView) findViewById(R.id.fragment_web);
        this.h = webView;
        webView.setWebChromeClient(new b());
        this.h.setWebViewClient(new c());
        this.h.getSettings().setDomStorageEnabled(true);
        this.h.getSettings().setJavaScriptEnabled(true);
        q();
        p();
        this.h.addJavascriptInterface(new e(this, null), "BebasBayar");
        this.l = (EditText) findViewById(R.id.input_search);
        Button button = (Button) findViewById(R.id.btn_search);
        this.j = button;
        button.setOnClickListener(this);
        Buttonizer.disable(this.j);
        E();
    }

    public void onDestroy() {
        this.m = null;
        WebView webView = this.h;
        if (webView != null) {
            webView.removeAllViews();
            WebView webView2 = this.h;
            if (webView2 != null) {
                webView2.clearHistory();
                this.h.clearCache(true);
                this.h.loadUrl("about:blank");
                r();
                this.h.stopLoading();
                this.h.setWebChromeClient(null);
                this.h.setWebViewClient(null);
                this.h = null;
            }
        }
        super.onDestroy();
    }

    public void onPause() {
        super/*androidx.fragment.app.FragmentActivity*/.onPause();
        WebView webView = this.h;
        if (webView != null) {
            webView.onPause();
            this.h.pauseTimers();
        }
    }

    @Override
    public void onResume() {
        super.onResume();
        WebView webView = this.h;
        if (webView != null) {
            webView.onResume();
            this.h.resumeTimers();
        }
    }

    @TargetApi(21)
    public final void p() {
        WebView webView = this.h;
        if (webView != null) {
            webView.getSettings().setMixedContentMode(0);
        }
    }

    @TargetApi(11)
    public final void q() {
        WebView webView = this.h;
        if (webView != null) {
            webView.setLayerType(1, null);
        }
    }

    public final void r() {
    }
}