导航菜单

页面标题

页面副标题

CallApp v2.226 - BrowserActivity.java 源代码

正在查看: CallApp v2.226 应用的 BrowserActivity.java JAVA 源代码文件

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


package net.pubnative.lite.sdk.utils.browser;

import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.webkit.CookieManager;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.callapp.contacts.activity.sms.chat.SmsChatActivity;
import com.smaato.sdk.core.browser.SmaatoSdkBrowserActivity;
import net.pubnative.lite.sdk.core.R;
import net.pubnative.lite.sdk.utils.Logger;

public class BrowserActivity extends Activity implements BrowserView {
    private static final String KEY_CTA_URL = "KEY_CTA_URL";
    private static final String TAG = "net.pubnative.lite.sdk.utils.browser.BrowserActivity";
    private BrowserPresenter browserPresenter;
    private View btnNavigationBackward;
    private View btnNavigationForward;
    private ProgressBar progressBar;
    private TextView tvHostname;
    private WebView webView;

    public interface WebViewCloseListener {
        void onWebViewCloseRequested();
    }

    public static Intent createIntent(Context context, String str) {
        Intent intent = new Intent(context, (Class<?>) BrowserActivity.class);
        intent.addFlags(536870912);
        intent.putExtra(KEY_CTA_URL, str);
        return intent;
    }

    private void initLogic() {
        BrowserPresenter browserPresenter;
        WebView webView = this.webView;
        if (webView != null && (browserPresenter = this.browserPresenter) != null) {
            browserPresenter.initWithView(this, webView);
        }
        String stringExtra = getIntent().getStringExtra(KEY_CTA_URL);
        BrowserPresenter browserPresenter2 = this.browserPresenter;
        if (browserPresenter2 != null) {
            browserPresenter2.loadUrl(stringExtra);
        }
    }

    private void initViews() {
        this.webView = (WebView) findViewById(R.id.webView);
        this.progressBar = (ProgressBar) findViewById(R.id.progressBar);
        findViewById(R.id.btnClose).setOnClickListener(new DoubleClickPreventionListener() {
            @Override
            public void processClick() {
                BrowserActivity.this.finish();
            }
        });
        findViewById(R.id.btnRefresh).setOnClickListener(new DoubleClickPreventionListener() {
            @Override
            public void processClick() {
                if (BrowserActivity.this.browserPresenter != null) {
                    BrowserActivity.this.browserPresenter.onReloadClicked();
                }
            }
        });
        View findViewById = findViewById(R.id.btnBackward);
        this.btnNavigationBackward = findViewById;
        findViewById.setOnClickListener(new DoubleClickPreventionListener() {
            @Override
            public void processClick() {
                if (BrowserActivity.this.browserPresenter != null) {
                    BrowserActivity.this.browserPresenter.onPageNavigationBackClicked();
                }
            }
        });
        View findViewById2 = findViewById(R.id.btnForward);
        this.btnNavigationForward = findViewById2;
        findViewById2.setOnClickListener(new DoubleClickPreventionListener() {
            @Override
            public void processClick() {
                if (BrowserActivity.this.browserPresenter != null) {
                    BrowserActivity.this.browserPresenter.onPageNavigationForwardClicked();
                }
            }
        });
        TextView textView = (TextView) findViewById(R.id.tvHostname);
        this.tvHostname = textView;
        final int i = 0;
        textView.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public final boolean onLongClick(View view) {
                boolean lambda$initViews$0;
                switch (i) {
                    case 0:
                        lambda$initViews$0 = ((BrowserActivity) this).lambda$initViews$0(view);
                        return lambda$initViews$0;
                    case 1:
                        return SmaatoSdkBrowserActivity.a(this, view);
                    default:
                        return SmsChatActivity.r0(this, view);
                }
            }
        });
    }

    private void initWebView() {
        WebView webView = this.webView;
        if (webView != null) {
            WebSettings settings = webView.getSettings();
            settings.setUseWideViewPort(true);
            settings.setSupportZoom(true);
            settings.setDomStorageEnabled(true);
            settings.setBuiltInZoomControls(true);
            settings.setDisplayZoomControls(false);
        }
    }

    public boolean lambda$initViews$0(View view) {
        BrowserPresenter browserPresenter = this.browserPresenter;
        if (browserPresenter == null) {
            return false;
        }
        browserPresenter.onCopyHostnameClicked();
        return true;
    }

    public void onWebViewCloseRequested() {
        finish();
    }

    @Override
    public void closeBrowser() {
        finish();
    }

    @Override
    public void hideProgressIndicator() {
        ProgressBar progressBar = this.progressBar;
        if (progressBar != null) {
            progressBar.setVisibility(4);
        }
    }

    @Override
    public void launchExternalBrowser(Intent intent) {
        try {
            startActivity(intent);
        } catch (ActivityNotFoundException e) {
            e.printStackTrace();
            Logger.e(TAG, "The url seems to be invalid while launching external browser");
        }
        finish();
    }

    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        this.browserPresenter = new BrowserPresenter(new BrowserModel(new BaseWebViewClient(new net.pubnative.lite.sdk.db.a(this, 1)), new BaseWebChromeClient(), new BrowserCookieManager(CookieManager.getInstance())), new UrlCreator(), (ClipboardManager) getApplication().getSystemService("clipboard"));
        setContentView(R.layout.activity_internal_browser);
        initViews();
        initWebView();
        initLogic();
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        WebView webView = this.webView;
        if (webView != null) {
            webView.destroy();
        }
        BrowserPresenter browserPresenter = this.browserPresenter;
        if (browserPresenter != null) {
            browserPresenter.dropView();
        }
    }

    @Override
    public void onPause() {
        super.onPause();
        BrowserPresenter browserPresenter = this.browserPresenter;
        if (browserPresenter != null) {
            browserPresenter.onPause();
        }
    }

    @Override
    public void onResume() {
        super.onResume();
        BrowserPresenter browserPresenter = this.browserPresenter;
        if (browserPresenter != null) {
            browserPresenter.onResume();
        }
    }

    @Override
    public void onStart() {
        super.onStart();
    }

    @Override
    public void onStop() {
        super.onStop();
    }

    @Override
    public void redirectToExternalApp(Intent intent) {
        try {
            startActivity(intent);
        } catch (ActivityNotFoundException e) {
            e.printStackTrace();
            Logger.e(TAG, "The url seems to be invalid while redirecting to external app");
        }
    }

    @Override
    public void setPageNavigationBackEnabled(boolean z) {
        View view = this.btnNavigationBackward;
        if (view != null) {
            view.setEnabled(z);
        }
    }

    @Override
    public void setPageNavigationForwardEnabled(boolean z) {
        View view = this.btnNavigationForward;
        if (view != null) {
            view.setEnabled(z);
        }
    }

    @Override
    public void showConnectionSecure(boolean z) {
        int i = z ? R.drawable.browser_secure_connection : 0;
        TextView textView = this.tvHostname;
        if (textView != null) {
            textView.setCompoundDrawablesWithIntrinsicBounds(i, 0, 0, 0);
        }
    }

    @Override
    public void showHostname(String str) {
        TextView textView = this.tvHostname;
        if (textView != null) {
            textView.setText(str);
        }
    }

    @Override
    public void showProgressIndicator() {
        ProgressBar progressBar = this.progressBar;
        if (progressBar != null) {
            progressBar.setVisibility(0);
        }
    }

    @Override
    public void updateProgressIndicator(int i) {
        ProgressBar progressBar = this.progressBar;
        if (progressBar != null) {
            progressBar.setProgress(i);
        }
    }
}