MBridgeBTWebView.java 源代码


package com.mbridge.msdk.video.bt.module;

import android.content.Context;
import android.content.res.Configuration;
import android.net.http.SslError;
import android.os.Handler;
import android.os.Looper;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.util.Base64;
import android.view.View;
import android.webkit.SslErrorHandler;
import android.webkit.WebView;
import android.widget.FrameLayout;
import android.widget.ImageView;
import com.mbridge.msdk.foundation.entity.CampaignEx;
import com.mbridge.msdk.foundation.tools.q;
import com.mbridge.msdk.mbsignalcommon.b.a;
import com.mbridge.msdk.mbsignalcommon.mraid.b;
import com.mbridge.msdk.mbsignalcommon.windvane.WindVaneWebView;
import com.mbridge.msdk.mbsignalcommon.windvane.g;
import com.mbridge.msdk.video.signal.a.j;
import com.mbridge.msdk.videocommon.d.c;
import java.util.List;
import org.json.JSONObject;

public class MBridgeBTWebView extends BTBaseView implements b {

    private String f18774p;

    private String f18775q;

    private String f18776r;

    private boolean f18777s;

    private ImageView f18778t;

    private boolean f18779u;

    private c f18780v;

    private List<CampaignEx> f18781w;

    private WindVaneWebView f18782x;

    private j f18783y;

    private WebView f18784z;

    public MBridgeBTWebView(Context context) {
        super(context);
        this.f18777s = false;
        this.f18779u = false;
    }

    public void broadcast(String str, JSONObject jSONObject) {
        if (this.f18782x != null) {
            try {
                JSONObject jSONObject2 = new JSONObject();
                jSONObject2.put("code", BTBaseView.f18672n);
                jSONObject2.put("id", this.f18677d);
                jSONObject2.put("eventName", str);
                jSONObject2.put("data", jSONObject);
                g.a().a((WebView) this.f18782x, "broadcast", Base64.encodeToString(jSONObject2.toString().getBytes(), 2));
            } catch (Exception unused) {
                com.mbridge.msdk.video.bt.a.c.a().a((WebView) this.f18782x, "broadcast", this.f18677d);
            }
        }
    }

    @Override
    public void close() {
        WebView webView = this.f18784z;
        if (webView != null) {
            BTBaseView.a(webView, "onPlayerCloseBtnClicked", this.f18677d);
        }
    }

    @Override
    public void expand(String str, boolean z6) {
    }

    public List<CampaignEx> getCampaigns() {
        return this.f18781w;
    }

    public String getFilePath() {
        return this.f18775q;
    }

    public String getFileURL() {
        return this.f18774p;
    }

    public String getHtml() {
        return this.f18776r;
    }

    public CampaignEx getMraidCampaign() {
        return this.f18675b;
    }

    public c getRewardUnitSetting() {
        return this.f18780v;
    }

    public WindVaneWebView getWebView() {
        return this.f18782x;
    }

    @Override
    public void init(Context context) {
        int i6;
        WindVaneWebView windVaneWebView = new WindVaneWebView(context);
        this.f18782x = windVaneWebView;
        windVaneWebView.setBackgroundColor(0);
        this.f18782x.setVisibility(0);
        j jVar = new j(null, this.f18675b, this.f18781w);
        this.f18783y = jVar;
        jVar.a(this.f18676c);
        this.f18782x.setObject(this.f18783y);
        this.f18782x.setMraidObject(this);
        this.f18782x.setWebViewListener(new a() {
            @Override
            public final void a(Object obj) {
                super.a(obj);
                try {
                    String str = "";
                    String c6 = MBridgeBTWebView.this.f18783y != null ? MBridgeBTWebView.this.f18783y.c() : "";
                    if (!TextUtils.isEmpty(c6)) {
                        str = Base64.encodeToString(c6.getBytes(), 2);
                        q.a("RVWindVaneWebView", "getEndScreenInfo success");
                    } else {
                        q.a("RVWindVaneWebView", "getEndScreenInfo failed");
                    }
                    g.a().a(obj, str);
                } catch (Throwable th) {
                    q.a("RVWindVaneWebView", th.getMessage());
                }
            }

            @Override
            public final void a(WebView webView, String str) {
                super.a(webView, str);
                if (MBridgeBTWebView.this.f18784z != null) {
                    try {
                        JSONObject jSONObject = new JSONObject();
                        jSONObject.put("id", MBridgeBTWebView.this.f18677d);
                        jSONObject.put("code", BTBaseView.f18672n);
                        JSONObject jSONObject2 = new JSONObject();
                        jSONObject2.put("id", MBridgeBTWebView.this.f18677d);
                        jSONObject2.put("result", 1);
                        jSONObject.put("data", jSONObject2);
                        g.a().a(MBridgeBTWebView.this.f18784z, "onWebviewLoad", Base64.encodeToString(jSONObject.toString().getBytes(), 2));
                    } catch (Exception e6) {
                        com.mbridge.msdk.video.bt.a.c.a().a(MBridgeBTWebView.this.f18784z, e6.getMessage());
                        q.a("RVWindVaneWebView", e6.getMessage());
                    }
                }
                g.a().a(MBridgeBTWebView.this.f18782x);
            }

            @Override
            public final void a(WebView webView, int i7, String str, String str2) {
                super.a(webView, i7, str, str2);
                if (MBridgeBTWebView.this.f18784z != null) {
                    try {
                        JSONObject jSONObject = new JSONObject();
                        jSONObject.put("id", MBridgeBTWebView.this.f18677d);
                        jSONObject.put("code", BTBaseView.f18672n);
                        JSONObject jSONObject2 = new JSONObject();
                        jSONObject2.put("id", MBridgeBTWebView.this.f18677d);
                        jSONObject2.put("result", 2);
                        jSONObject2.put("error", str);
                        jSONObject.put("data", jSONObject2);
                        g.a().a(MBridgeBTWebView.this.f18784z, "onWebviewLoad", Base64.encodeToString(jSONObject.toString().getBytes(), 2));
                    } catch (Exception e6) {
                        com.mbridge.msdk.video.bt.a.c.a().a(MBridgeBTWebView.this.f18784z, e6.getMessage());
                        q.a("RVWindVaneWebView", e6.getMessage());
                    }
                }
            }

            @Override
            public final void a(WebView webView, SslErrorHandler sslErrorHandler, SslError sslError) {
                super.a(webView, sslErrorHandler, sslError);
                if (MBridgeBTWebView.this.f18784z != null) {
                    try {
                        JSONObject jSONObject = new JSONObject();
                        jSONObject.put("id", MBridgeBTWebView.this.f18677d);
                        jSONObject.put("code", BTBaseView.f18672n);
                        JSONObject jSONObject2 = new JSONObject();
                        jSONObject2.put("id", MBridgeBTWebView.this.f18677d);
                        jSONObject2.put("result", 2);
                        jSONObject2.put("error", sslError.toString());
                        jSONObject.put("data", jSONObject2);
                        g.a().a(MBridgeBTWebView.this.f18784z, "onWebviewLoad", Base64.encodeToString(jSONObject.toString().getBytes(), 2));
                    } catch (Exception e6) {
                        com.mbridge.msdk.video.bt.a.c.a().a(MBridgeBTWebView.this.f18784z, e6.getMessage());
                        q.a("RVWindVaneWebView", e6.getMessage());
                    }
                }
            }

            @Override
            public final void a(WebView webView, int i7) {
                super.a(webView, i7);
            }
        });
        addView(this.f18782x, new FrameLayout.LayoutParams(-1, -1));
        setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                if (MBridgeBTWebView.this.f18784z != null) {
                    try {
                        JSONObject jSONObject = new JSONObject();
                        jSONObject.put("code", BTBaseView.f18672n);
                        jSONObject.put("id", MBridgeBTWebView.this.f18677d);
                        JSONObject jSONObject2 = new JSONObject();
                        jSONObject2.put("x", String.valueOf(view.getX()));
                        jSONObject2.put("y", String.valueOf(view.getY()));
                        jSONObject.put("data", jSONObject2);
                        g.a().a(MBridgeBTWebView.this.f18784z, "onClicked", Base64.encodeToString(jSONObject.toString().getBytes(), 2));
                    } catch (Exception unused) {
                        com.mbridge.msdk.video.bt.a.c.a().a(MBridgeBTWebView.this.f18784z, "onClicked", MBridgeBTWebView.this.f18677d);
                    }
                }
            }
        });
        try {
            ImageView imageView = new ImageView(getContext());
            this.f18778t = imageView;
            imageView.setImageResource(findDrawable("mbridge_reward_close"));
            FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(96, 96);
            layoutParams.gravity = 8388661;
            layoutParams.setMargins(30, 30, 30, 30);
            this.f18778t.setLayoutParams(layoutParams);
            ImageView imageView2 = this.f18778t;
            if (this.f18777s) {
                i6 = 4;
            } else {
                i6 = 8;
            }
            imageView2.setVisibility(i6);
            CampaignEx campaignEx = this.f18675b;
            if (campaignEx != null && campaignEx.isMraid()) {
                this.f18778t.setVisibility(4);
            }
            this.f18778t.setOnClickListener(new View.OnClickListener() {
                @Override
                public final void onClick(View view) {
                    MBridgeBTWebView.this.close();
                }
            });
            addView(this.f18778t);
        } catch (Throwable th) {
            q.a("BTBaseView", th.getMessage());
        }
    }

    public void onBackPressed() {
        if (this.f18782x != null) {
            com.mbridge.msdk.video.bt.a.c.a().a((WebView) this.f18782x, "onSystemBackPressed", this.f18677d);
        }
    }

    @Override
    public void onConfigurationChanged(Configuration configuration) {
        if (this.f18782x != null) {
            try {
                JSONObject jSONObject = new JSONObject();
                if (configuration.orientation == 2) {
                    jSONObject.put("orientation", "landscape");
                } else {
                    jSONObject.put("orientation", "portrait");
                }
                jSONObject.put("instanceId", this.f18677d);
                g.a().a((WebView) this.f18782x, "orientation", Base64.encodeToString(jSONObject.toString().getBytes(), 2));
            } catch (Exception e6) {
                e6.printStackTrace();
            }
        }
    }

    @Override
    public void onDestory() {
        if (this.f18779u) {
            return;
        }
        this.f18779u = true;
        try {
            if (this.f18782x != null) {
                com.mbridge.msdk.video.bt.a.c.a().a((WebView) this.f18782x, "onSystemDestory", this.f18677d);
            }
            new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
                @Override
                public final void run() {
                    try {
                        if (MBridgeBTWebView.this.f18782x != null) {
                            MBridgeBTWebView.this.f18782x.clearWebView();
                            MBridgeBTWebView.this.f18782x.release();
                        }
                        MBridgeBTWebView.this.f18774p = null;
                        MBridgeBTWebView.this.f18775q = null;
                        MBridgeBTWebView.this.f18776r = null;
                        if (MBridgeBTWebView.this.f18784z != null) {
                            MBridgeBTWebView.this.f18784z = null;
                        }
                    } catch (Throwable th) {
                        q.a("BTBaseView", th.getMessage());
                    }
                }
            }, 500L);
            setOnClickListener(null);
            removeAllViews();
        } catch (Throwable th) {
            q.a("BTBaseView", th.getMessage());
        }
    }

    @Override
    public void open(String str) {
        try {
            String clickURL = this.f18675b.getClickURL();
            if (!TextUtils.isEmpty(str)) {
                this.f18675b.setClickURL(str);
                try {
                    CampaignEx mraidCampaign = getMraidCampaign();
                    if (mraidCampaign != null) {
                        new com.mbridge.msdk.foundation.same.report.c(getContext()).b(mraidCampaign.getRequestId(), mraidCampaign.getRequestIdNotice(), mraidCampaign.getId(), this.f18676c, str, this.f18675b.isBidCampaign());
                    }
                } catch (Throwable th) {
                    q.a("BTBaseView", th.getMessage());
                }
            }
            new com.mbridge.msdk.click.a(getContext(), this.f18676c).a(this.f18675b);
            this.f18675b.setClickURL(clickURL);
        } catch (Throwable th2) {
            q.d("BTBaseView", th2.getMessage());
        }
    }

    public void preload() {
        if (!TextUtils.isEmpty(this.f18774p)) {
            this.f18782x.loadUrl(this.f18774p);
        } else if (!TextUtils.isEmpty(this.f18775q)) {
            this.f18782x.loadUrl(this.f18775q);
        } else if (!TextUtils.isEmpty(this.f18776r)) {
            this.f18782x.loadDataWithBaseURL("", this.f18776r, "text/html", "UTF-8", null);
        }
    }

    public void setCampaigns(List<CampaignEx> list) {
        this.f18781w = list;
    }

    public void setCreateWebView(WebView webView) {
        this.f18784z = webView;
    }

    public void setFilePath(String str) {
        this.f18775q = str;
    }

    public void setFileURL(String str) {
        this.f18774p = str;
        if (!TextUtils.isEmpty(str)) {
            boolean contains = str.contains("play.google.com");
            setWebviewClickable(!contains);
            if (contains) {
                com.mbridge.msdk.mbsignalcommon.base.c cVar = new com.mbridge.msdk.mbsignalcommon.base.c();
                WindVaneWebView windVaneWebView = this.f18782x;
                if (windVaneWebView != null) {
                    windVaneWebView.setFilter(cVar);
                }
            }
        }
    }

    public void setHtml(String str) {
        this.f18776r = str;
    }

    @Override
    public void setRewardUnitSetting(c cVar) {
        this.f18780v = cVar;
    }

    public void setWebViewRid(String str) {
        WindVaneWebView windVaneWebView = this.f18782x;
        if (windVaneWebView != null) {
            windVaneWebView.setRid(str);
        }
    }

    public void setWebviewClickable(boolean z6) {
        WindVaneWebView windVaneWebView = this.f18782x;
        if (windVaneWebView != null) {
            windVaneWebView.setClickable(z6);
        }
    }

    @Override
    public void unload() {
        close();
    }

    @Override
    public void useCustomClose(boolean z6) {
        int i6;
        try {
            ImageView imageView = this.f18778t;
            if (z6) {
                i6 = 4;
            } else {
                i6 = 0;
            }
            imageView.setVisibility(i6);
        } catch (Throwable th) {
            q.d("BTBaseView", th.getMessage());
        }
    }

    public boolean webviewGoBack() {
        WindVaneWebView windVaneWebView = this.f18782x;
        if (windVaneWebView != null && windVaneWebView.canGoBack()) {
            this.f18782x.goBack();
            return true;
        }
        return false;
    }

    public boolean webviewGoForward() {
        WindVaneWebView windVaneWebView = this.f18782x;
        if (windVaneWebView != null && windVaneWebView.canGoForward()) {
            this.f18782x.goForward();
            return true;
        }
        return false;
    }

    public void webviewLoad(int i6) {
        if (this.f18783y == null) {
            this.f18783y = new j(null, this.f18675b, this.f18781w);
        }
        CampaignEx campaignEx = this.f18675b;
        if (campaignEx != null) {
            this.f18783y.a(campaignEx);
        } else {
            List<CampaignEx> list = this.f18781w;
            if (list != null && list.size() > 0) {
                this.f18783y.a(this.f18781w);
                if (this.f18781w.size() == 1) {
                    this.f18783y.a(this.f18781w.get(0));
                }
            }
        }
        c cVar = this.f18780v;
        if (cVar != null) {
            this.f18783y.a(cVar);
        }
        this.f18783y.a(this.f18676c);
        this.f18783y.c(this.f18677d);
        if (i6 == 1) {
            this.f18783y.n();
        }
        WindVaneWebView windVaneWebView = this.f18782x;
        if (windVaneWebView != null) {
            windVaneWebView.setObject(this.f18783y);
        }
        CampaignEx campaignEx2 = this.f18675b;
        if (campaignEx2 != null && campaignEx2.isMraid()) {
            this.f18778t.setVisibility(4);
        }
        preload();
    }

    public boolean webviewReload() {
        WindVaneWebView windVaneWebView = this.f18782x;
        if (windVaneWebView != null) {
            windVaneWebView.reload();
            return true;
        }
        return false;
    }

    public MBridgeBTWebView(Context context, AttributeSet attributeSet) {
        super(context, attributeSet);
        this.f18777s = false;
        this.f18779u = false;
    }
}