翰林优商.apk(点击下载) / InnerWebView.java


package com.iBookStar.views;

import android.content.Context;
import android.content.res.Configuration;
import android.graphics.Bitmap;
import android.net.http.SslError;
import android.os.Build;
import android.util.AttributeSet;
import android.util.Log;
import android.webkit.CookieManager;
import android.webkit.CookieSyncManager;
import android.webkit.DownloadListener;
import android.webkit.SslErrorHandler;
import android.webkit.WebBackForwardList;
import android.webkit.WebChromeClient;
import android.webkit.WebHistoryItem;
import android.webkit.WebSettings;
import android.webkit.WebStorage;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import com.iBookStar.utils.s;
import com.iBookStar.views.CommonWebView;

public class InnerWebView extends ScrollWebView implements DownloadListener {
    private CommonWebView.f2 f;
    private CommonWebView.d2 g;
    private CommonWebView h;
    private boolean i = true;
    private float j = 1.0f;

    /* access modifiers changed from: package-private */
    public class a extends WebViewClient {
        final /* synthetic */ CommonWebView a;

        a(CommonWebView commonWebView) {
            this.a = commonWebView;
        }

        public void onPageFinished(WebView webView, String str) {
            if (InnerWebView.this.f != null) {
                InnerWebView.this.f.a(this.a, str);
            }
            super.onPageFinished(webView, str);
        }

        public void onPageStarted(WebView webView, String str, Bitmap bitmap) {
            if (InnerWebView.this.f != null) {
                InnerWebView.this.f.a(this.a, str, bitmap);
            }
            super.onPageStarted(webView, str, bitmap);
        }

        public void onReceivedSslError(WebView webView, SslErrorHandler sslErrorHandler, SslError sslError) {
            sslErrorHandler.proceed();
        }

        public void onScaleChanged(WebView webView, float f, float f2) {
            InnerWebView.this.j = f2;
        }

        @Override // android.webkit.WebViewClient
        public boolean shouldOverrideUrlLoading(WebView webView, String str) {
            if (InnerWebView.this.f == null || !InnerWebView.this.f.b(this.a, str)) {
                return super.shouldOverrideUrlLoading(webView, str);
            }
            return true;
        }
    }

    /* access modifiers changed from: package-private */
    public class b extends WebChromeClient {
        final /* synthetic */ CommonWebView a;

        b(CommonWebView commonWebView) {
            this.a = commonWebView;
        }

        public void onProgressChanged(WebView webView, int i) {
            if (InnerWebView.this.g != null) {
                InnerWebView.this.g.a(this.a, i);
            }
        }

        public void onReceivedTitle(WebView webView, String str) {
            if (InnerWebView.this.g != null) {
                InnerWebView.this.g.a(this.a, str);
            }
        }
    }

    /* access modifiers changed from: package-private */
    public class c extends WebViewClient {
        final /* synthetic */ InnerWebView a;

        c(InnerWebView innerWebView) {
            this.a = innerWebView;
        }

        public void onPageFinished(WebView webView, String str) {
            super.onPageFinished(webView, str);
            try {
                String cookie = CookieManager.getInstance().getCookie("http://boardy.huanqiu.com");
                CookieManager.getInstance().removeAllCookie();
                CookieManager.getInstance().removeSessionCookie();
                if (s.c(cookie)) {
                    for (String str2 : cookie.split(";")) {
                        String trim = str2.trim();
                        String[] split = trim.split("=");
                        if (split.length > 1) {
                            String trim2 = split[0].trim();
                            if (!trim2.startsWith("smuc")) {
                                if (!trim2.startsWith("smub")) {
                                    CookieManager.getInstance().setCookie("http://boardy.huanqiu.com", trim);
                                }
                            }
                            this.a.loadUrl("javascript:localStorage.removeItem('" + trim2 + "')");
                        }
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            InnerWebView.this.reload();
        }

        @Override // android.webkit.WebViewClient
        public boolean shouldOverrideUrlLoading(WebView webView, String str) {
            webView.loadUrl(str);
            return true;
        }
    }

    /* access modifiers changed from: package-private */
    public class d extends WebViewClient {
        final /* synthetic */ InnerWebView a;
        final /* synthetic */ String b;

        d(InnerWebView innerWebView, String str) {
            this.a = innerWebView;
            this.b = str;
        }

        public void onPageFinished(WebView webView, String str) {
            super.onPageFinished(webView, str);
            try {
                CookieSyncManager.createInstance(com.iBookStar.b.a.k());
                com.tencent.smtt.sdk.CookieManager instance = com.tencent.smtt.sdk.CookieManager.getInstance();
                if (Build.VERSION.SDK_INT >= 21) {
                    instance.removeAllCookie();
                    instance.removeSessionCookie();
                    instance.flush();
                } else {
                    instance.removeAllCookie();
                    instance.removeSessionCookie();
                    CookieSyncManager.getInstance().sync();
                }
                this.a.loadUrl("javascript:localStorage.clear()");
                InnerWebView innerWebView = InnerWebView.this;
                innerWebView.loadUrl("javascript:" + this.b + "()");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

        @Override // android.webkit.WebViewClient
        public boolean shouldOverrideUrlLoading(WebView webView, String str) {
            webView.loadUrl(str);
            return true;
        }
    }

    public static class e implements CommonWebView.c2 {
        private WebBackForwardList a;

        public e(WebBackForwardList webBackForwardList) {
            this.a = webBackForwardList;
        }

        @Override // com.iBookStar.views.CommonWebView.c2
        public int a() {
            WebBackForwardList webBackForwardList = this.a;
            if (webBackForwardList != null) {
                return webBackForwardList.getCurrentIndex();
            }
            return 0;
        }

        @Override // com.iBookStar.views.CommonWebView.c2
        public CommonWebView.e2 a(int i) {
            WebBackForwardList webBackForwardList = this.a;
            if (webBackForwardList == null || i < 0 || i >= webBackForwardList.getSize()) {
                return null;
            }
            return new f(this.a.getItemAtIndex(i));
        }
    }

    public static class f implements CommonWebView.e2 {
        private WebHistoryItem a;

        public f(WebHistoryItem webHistoryItem) {
            this.a = webHistoryItem;
        }

        @Override // com.iBookStar.views.CommonWebView.e2
        public String a() {
            WebHistoryItem webHistoryItem = this.a;
            if (webHistoryItem != null) {
                return webHistoryItem.getOriginalUrl();
            }
            return null;
        }

        @Override // com.iBookStar.views.CommonWebView.e2
        public String b() {
            WebHistoryItem webHistoryItem = this.a;
            if (webHistoryItem != null) {
                return webHistoryItem.getUrl();
            }
            return null;
        }
    }

    public InnerWebView(Context context) {
        super(a(context));
    }

    public InnerWebView(Context context, AttributeSet attributeSet) {
        super(a(context), attributeSet);
    }

    public InnerWebView(Context context, AttributeSet attributeSet, int i2) {
        super(a(context), attributeSet, i2);
    }

    public InnerWebView(Context context, AttributeSet attributeSet, int i2, int i3) {
        super(a(context), attributeSet, i2, i3);
    }

    public InnerWebView(Context context, AttributeSet attributeSet, int i2, boolean z) {
        super(a(context), attributeSet, i2, z);
    }

    private static Context a(Context context) {
        int i2 = Build.VERSION.SDK_INT;
        return (i2 < 21 || i2 >= 23) ? context : context.createConfigurationContext(new Configuration());
    }

    /* access modifiers changed from: protected */
    public void a() {
        try {
            InnerWebView innerWebView = new InnerWebView(getContext());
            innerWebView.a(this.h);
            innerWebView.setDownloadEnable(false);
            innerWebView.setWebViewClient(new c(innerWebView));
            innerWebView.loadUrl("http://boardy.huanqiu.com");
        } catch (Exception e2) {
            e2.printStackTrace();
        }
    }

    /* access modifiers changed from: protected */
    public void a(CommonWebView commonWebView) {
        this.h = commonWebView;
        getSettings().setJavaScriptEnabled(true);
        getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
        getSettings().setLoadsImagesAutomatically(true);
        getSettings().setAllowFileAccess(true);
        addJavascriptInterface(commonWebView, "Client");
        CookieManager.getInstance().setAcceptCookie(true);
        if (Build.VERSION.SDK_INT >= 21) {
            getSettings().setMixedContentMode(0);
            CookieManager.getInstance().setAcceptThirdPartyCookies(this, true);
        }
        getSettings().setUseWideViewPort(true);
        getSettings().setLoadWithOverviewMode(true);
        getSettings().setSaveFormData(true);
        getSettings().setSavePassword(true);
        getSettings().setDefaultZoom(WebSettings.ZoomDensity.MEDIUM);
        getSettings().setSupportZoom(true);
        getSettings().setTextZoom(100);
        getSettings().setBuiltInZoomControls(true);
        if (Build.VERSION.SDK_INT >= 11) {
            getSettings().setDisplayZoomControls(false);
        }
        if (Build.VERSION.SDK_INT > 8) {
            getSettings().setPluginState(WebSettings.PluginState.ON_DEMAND);
        }
        getSettings().setAppCacheEnabled(true);
        getSettings().setDatabaseEnabled(true);
        getSettings().setDomStorageEnabled(true);
        setLongClickable(true);
        setVerticalScrollBarEnabled(false);
        setHorizontalScrollBarEnabled(false);
        setWebViewClient(new a(commonWebView));
        setWebChromeClient(new b(commonWebView));
        setDownloadListener(this);
        this.j = super.getScale();
    }

    /* access modifiers changed from: protected */
    public void a(String str) {
        if (com.iBookStar.c.c.k()) {
            try {
                CookieSyncManager.createInstance(com.iBookStar.b.a.k());
                CookieManager instance = CookieManager.getInstance();
                if (Build.VERSION.SDK_INT >= 21) {
                    instance.removeAllCookie();
                    instance.removeSessionCookie();
                    instance.flush();
                } else {
                    instance.removeAllCookie();
                    instance.removeSessionCookie();
                    CookieSyncManager.getInstance().sync();
                }
                WebStorage.getInstance().deleteAllData();
                loadUrl("javascript:" + str + "()");
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        } else {
            InnerWebView innerWebView = new InnerWebView(getContext());
            innerWebView.a(this.h);
            innerWebView.setDownloadEnable(false);
            innerWebView.setWebViewClient(new d(innerWebView, str));
            innerWebView.loadUrl("http://boardy.huanqiu.com");
        }
    }

    /* access modifiers changed from: protected */
    public boolean b() {
        try {
            String cookie = CookieManager.getInstance().getCookie("http://boardy.huanqiu.com");
            if (s.c(cookie)) {
                for (String str : cookie.split(";")) {
                    if (str.contains("smub")) {
                        return false;
                    }
                }
            }
        } catch (Exception e2) {
            e2.printStackTrace();
        }
        return true;
    }

    public float getScale() {
        return this.j;
    }

    public String getUA() {
        return getSettings().getUserAgentString();
    }

    public CommonWebView.c2 innercopyBackForwardList() {
        return new e(super.copyBackForwardList());
    }

    public void onDownloadStart(String str, String str2, String str3, String str4, long j2) {
        if (this.i) {
            this.h.onDownloadStart(str, str2, str3, str4, j2);
        }
    }

    public void setCacheMode(int i2) {
        getSettings().setCacheMode(i2);
    }

    public void setCommonWebChromeClient(CommonWebView.d2 d2Var) {
        this.g = d2Var;
    }

    public void setCommonWebViewClient(CommonWebView.f2 f2Var) {
        this.f = f2Var;
    }

    public void setDownloadEnable(boolean z) {
        this.i = z;
    }

    public void setJavaScriptEnabled(boolean z) {
        getSettings().setJavaScriptEnabled(z);
    }

    public void setMediaPlaybackRequiresUserGesture(boolean z) {
        if (Build.VERSION.SDK_INT >= 17) {
            getSettings().setMediaPlaybackRequiresUserGesture(z);
        }
    }

    public void setOverScrollMode(int i2) {
        try {
            super.setOverScrollMode(i2);
        } catch (Throwable th) {
            String stackTraceString = Log.getStackTraceString(th);
            if (stackTraceString.contains("android.content.pm.PackageManager$NameNotFoundException") || stackTraceString.contains("java.lang.RuntimeException: Cannot load WebView") || stackTraceString.contains("android.webkit.WebViewFactory$MissingWebViewPackageException: Failed to load WebView provider: No WebView installed")) {
                th.printStackTrace();
                return;
            }
            throw th;
        }
    }
}