Idle Tower v2.48版本的 MD5 值为:56f20496f6a85726b376356ed2ecee23

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


package com.my.target;

import android.content.Context;
import android.graphics.Bitmap;
import android.net.Uri;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.View;
import android.webkit.ConsoleMessage;
import android.webkit.RenderProcessGoneDetail;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceError;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import com.my.target.b0;

public final class b0 extends d0 {
    public a d;
    public boolean e;
    public boolean f;
    public d g;

    public interface a {
        void a(WebView webView);

        void a(String str);

        void b(String str);

        void c();
    }

    public static final class b extends WebChromeClient {
        @Override
        public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
            j9.a("BannerWebView$MyWebChromeClient: JS console message " + consoleMessage.message() + " at line " + consoleMessage.lineNumber());
            return false;
        }
    }

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

        @Override
        public void onPageFinished(WebView webView, String str) {
            if (b0.this.e) {
                return;
            }
            b0.this.e = true;
            j9.a("BannerWebView$MyWebViewClient: Page loaded");
            super.onPageFinished(webView, str);
            a aVar = b0.this.d;
            if (aVar != null) {
                aVar.a(webView);
            }
        }

        @Override
        public void onPageStarted(WebView webView, String str, Bitmap bitmap) {
            j9.a("BannerWebView$MyWebViewClient: Load page started");
            super.onPageStarted(webView, str, bitmap);
        }

        @Override
        public void onReceivedError(WebView webView, int i, String str, String str2) {
            j9.a("BannerWebView$MyWebViewClient: Load failed. Error - " + i + ", description - " + str + ", url - " + str2);
            super.onReceivedError(webView, i, str, str2);
            a aVar = b0.this.d;
            if (aVar == null) {
                return;
            }
            if (str == null) {
                str = "unknown JS error";
            }
            aVar.a(str);
        }

        @Override
        public void onReceivedError(WebView webView, WebResourceRequest webResourceRequest, WebResourceError webResourceError) {
            super.onReceivedError(webView, webResourceRequest, webResourceError);
            CharSequence description = webResourceError.getDescription();
            String charSequence = description != null ? description.toString() : null;
            j9.a("BannerWebView$MyWebViewClient: Load failed. Error - " + webResourceError.getErrorCode() + ", description - " + charSequence + ", url - " + webResourceRequest.getUrl().toString());
            a aVar = b0.this.d;
            if (aVar == null) {
                return;
            }
            if (charSequence == null) {
                charSequence = "Unknown JS error";
            }
            aVar.a(charSequence);
        }

        @Override
        public boolean onRenderProcessGone(WebView webView, RenderProcessGoneDetail renderProcessGoneDetail) {
            j9.b("WebView crashed");
            a aVar = b0.this.d;
            if (aVar == null) {
                return true;
            }
            aVar.c();
            return true;
        }

        @Override
        public void onScaleChanged(WebView webView, float f, float f2) {
            super.onScaleChanged(webView, f, f2);
            j9.a("BannerWebView$MyWebViewClient: Scale new - " + f2 + ", old - " + f);
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView webView, WebResourceRequest webResourceRequest) {
            Uri url;
            if (!b0.this.f || (url = webResourceRequest.getUrl()) == null) {
                return true;
            }
            b0.this.c(url.toString());
            b0.this.h();
            return true;
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView webView, String str) {
            if (b0.this.f && str != null) {
                b0.this.c(str);
                b0.this.h();
            }
            return true;
        }
    }

    public interface d {
        void a();
    }

    public static final class e extends GestureDetector {

        public final View f6918a;
        public a b;

        public interface a {
            void a();
        }

        public e(Context context, View view) {
            this(context, view, new GestureDetector.SimpleOnGestureListener());
        }

        public e(Context context, View view, GestureDetector.SimpleOnGestureListener simpleOnGestureListener) {
            super(context, simpleOnGestureListener);
            this.f6918a = view;
            setIsLongpressEnabled(false);
        }

        public void a(MotionEvent motionEvent) {
            int action = motionEvent.getAction();
            if (action != 0) {
                if (action == 1) {
                    if (this.b == null) {
                        j9.a("BannerWebView$ViewGestureDetector: View's onUserClick() is not registered");
                        return;
                    } else {
                        j9.a("BannerWebView$ViewGestureDetector: Gestures - user clicked");
                        this.b.a();
                        return;
                    }
                }
                if (action != 2 || !a(motionEvent, this.f6918a)) {
                    return;
                }
            }
            onTouchEvent(motionEvent);
        }

        public void a(a aVar) {
            this.b = aVar;
        }

        public final boolean a(MotionEvent motionEvent, View view) {
            if (motionEvent == null || view == null) {
                return false;
            }
            float x = motionEvent.getX();
            float y = motionEvent.getY();
            return x >= 0.0f && x <= ((float) view.getWidth()) && y >= 0.0f && y <= ((float) view.getHeight());
        }
    }

    public b0(Context context) {
        super(context);
        b bVar = new b();
        c cVar = new c();
        final e eVar = new e(getContext(), this);
        eVar.a(new e.a() {
            @Override
            public final void a() {
                b0.this.g();
            }
        });
        setOnTouchListener(new View.OnTouchListener() {
            @Override
            public final boolean onTouch(View view, MotionEvent motionEvent) {
                return b0.a(b0.e.this, view, motionEvent);
            }
        });
        setHorizontalScrollBarEnabled(false);
        setVerticalScrollBarEnabled(false);
        WebSettings settings = getSettings();
        if (settings != null) {
            settings.setJavaScriptEnabled(true);
            settings.setDomStorageEnabled(true);
            settings.setAppCacheEnabled(true);
            settings.setSupportZoom(false);
            settings.setAppCachePath(getContext().getCacheDir().getAbsolutePath());
            settings.setAllowFileAccess(false);
            settings.setAllowContentAccess(false);
            settings.setAllowFileAccessFromFileURLs(false);
            settings.setAllowUniversalAccessFromFileURLs(false);
        }
        setWebChromeClient(bVar);
        setWebViewClient(cVar);
    }

    public static boolean a(e eVar, View view, MotionEvent motionEvent) {
        eVar.a(motionEvent);
        return false;
    }

    public void g() {
        this.f = true;
    }

    public void b(String str) {
        WebView webView = getWebView();
        if (webView == null) {
            return;
        }
        webView.evaluateJavascript(str, null);
    }

    public void c(String str) {
        a aVar = this.d;
        if (aVar != null) {
            aVar.b(str);
        }
    }

    public void h() {
        this.f = false;
    }

    @Override
    public void onLayout(boolean z, int i, int i2, int i3, int i4) {
        super.onLayout(z, i, i2, i3, i4);
        d dVar = this.g;
        if (dVar != null) {
            dVar.a();
        }
    }

    public void setBannerWebViewListener(a aVar) {
        this.d = aVar;
    }

    public void setData(String str) {
        this.e = false;
        this.f = false;
        a("https://ad.mail.ru/", str, "text/html", "UTF-8", null);
    }

    public void setForceMediaPlayback(boolean z) {
        WebView webView = getWebView();
        if (webView == null) {
            return;
        }
        webView.getSettings().setMediaPlaybackRequiresUserGesture(!z);
    }

    public void setOnLayoutListener(d dVar) {
        this.g = dVar;
    }
}