正在查看: CallApp v2.226 应用的 POBInternalBrowserActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: CallApp v2.226 应用的 POBInternalBrowserActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.pubmatic.sdk.common.browser;
import android.R;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.http.SslError;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.RenderProcessGoneDetail;
import android.webkit.SslErrorHandler;
import android.webkit.WebResourceError;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.pubmatic.sdk.common.log.POBLog;
import com.pubmatic.sdk.common.utility.POBAlertDialog;
import com.pubmatic.sdk.common.utility.POBDeepLinkUtil;
import com.pubmatic.sdk.common.utility.POBUtils;
import com.pubmatic.sdk.common.view.POBWebView;
import java.util.ArrayList;
import java.util.List;
public class POBInternalBrowserActivity extends Activity {
private static List h;
private ImageView a;
private ImageView b;
private WebView c;
private ProgressBar d;
private int e;
private AlertDialog f;
private ViewGroup g;
public interface InternalBrowserListener {
void onBrowserDismiss();
void onBrowserStart();
void onExternalBrowserClick(@NonNull String str);
}
public class a implements View.OnClickListener {
public a() {
}
@Override
public void onClick(View view) {
POBInternalBrowserActivity.this.finish();
}
}
public class b implements View.OnClickListener {
public b() {
}
@Override
public void onClick(View view) {
POBInternalBrowserActivity.this.l();
}
}
public class c implements View.OnClickListener {
public c() {
}
@Override
public void onClick(View view) {
if (POBInternalBrowserActivity.this.c != null) {
POBInternalBrowserActivity.this.c.goForward();
}
}
}
public class d implements View.OnClickListener {
public d() {
}
@Override
public void onClick(View view) {
if (POBInternalBrowserActivity.this.c != null) {
POBInternalBrowserActivity.this.c.reload();
}
}
}
public class e implements View.OnClickListener {
public e() {
}
@Override
public void onClick(View view) {
POBInternalBrowserActivity.this.j();
}
}
public class f extends WebViewClient {
public class a implements POBAlertDialog.POBDialogListener {
final SslErrorHandler a;
public a(SslErrorHandler sslErrorHandler) {
this.a = sslErrorHandler;
}
@Override
public void onCancel(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
this.a.cancel();
if (POBInternalBrowserActivity.this.c == null || POBInternalBrowserActivity.this.c.copyBackForwardList().getCurrentIndex() >= 0) {
return;
}
POBInternalBrowserActivity.this.l();
}
@Override
public void onSuccess(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
this.a.proceed();
}
}
private f() {
}
@Override
public void onPageFinished(WebView webView, String str) {
if (POBInternalBrowserActivity.this.d != null) {
POBInternalBrowserActivity.this.d.setVisibility(8);
}
if (POBInternalBrowserActivity.this.c != null) {
if (POBInternalBrowserActivity.this.a != null) {
POBInternalBrowserActivity pOBInternalBrowserActivity = POBInternalBrowserActivity.this;
pOBInternalBrowserActivity.a(pOBInternalBrowserActivity.a, POBInternalBrowserActivity.this.c.canGoBack());
}
if (POBInternalBrowserActivity.this.b != null) {
POBInternalBrowserActivity pOBInternalBrowserActivity2 = POBInternalBrowserActivity.this;
pOBInternalBrowserActivity2.a(pOBInternalBrowserActivity2.b, POBInternalBrowserActivity.this.c.canGoForward());
}
}
}
@Override
public void onPageStarted(WebView webView, String str, Bitmap bitmap) {
if (POBInternalBrowserActivity.this.d != null) {
POBInternalBrowserActivity.this.d.setVisibility(0);
}
super.onPageStarted(webView, str, bitmap);
}
@Override
public void onReceivedError(WebView webView, int i, String str, String str2) {
ProgressBar unused = POBInternalBrowserActivity.this.d;
super.onReceivedError(webView, i, str, str2);
}
@Override
public void onReceivedSslError(WebView webView, SslErrorHandler sslErrorHandler, SslError sslError) {
POBLog.warn("POBInternalBrowserActivity", "SSL error: %s", sslError);
if (POBInternalBrowserActivity.this.d != null) {
POBInternalBrowserActivity.this.d.setVisibility(8);
}
String str = "Connection to this site is not secure: " + POBInternalBrowserActivity.this.b(sslError.getPrimaryError());
if (POBInternalBrowserActivity.this.isFinishing()) {
POBLog.warn("POBInternalBrowserActivity", "Error showing ssl error dialog as activity is finishing!", new Object[0]);
return;
}
if (POBInternalBrowserActivity.this.f != null) {
if (POBInternalBrowserActivity.this.f.isShowing()) {
return;
}
POBInternalBrowserActivity.this.f.setMessage(str);
POBInternalBrowserActivity.this.f.show();
return;
}
AlertDialog.Builder build = POBAlertDialog.build(POBInternalBrowserActivity.this, "Warning!", str, new a(sslErrorHandler));
if (build != null) {
try {
POBInternalBrowserActivity.this.f = build.create();
POBInternalBrowserActivity.this.f.show();
} catch (Exception unused) {
POBLog.error("POBInternalBrowserActivity", "Error showing ssl error dialog.", new Object[0]);
}
}
}
@Override
public boolean onRenderProcessGone(WebView webView, RenderProcessGoneDetail renderProcessGoneDetail) {
POBInternalBrowserActivity.this.h();
POBInternalBrowserActivity.this.finish();
return true;
}
@Override
public boolean shouldOverrideUrlLoading(WebView webView, String str) {
return false;
}
public f(POBInternalBrowserActivity pOBInternalBrowserActivity, a aVar) {
this();
}
@Override
public boolean shouldOverrideUrlLoading(WebView webView, WebResourceRequest webResourceRequest) {
return POBDeepLinkUtil.validateAndRedirect(POBInternalBrowserActivity.this, webResourceRequest.getUrl().toString());
}
@Override
public void onReceivedError(WebView webView, WebResourceRequest webResourceRequest, WebResourceError webResourceError) {
if (POBInternalBrowserActivity.this.d != null) {
POBInternalBrowserActivity.this.d.setVisibility(8);
}
super.onReceivedError(webView, webResourceRequest, webResourceError);
}
}
private void i() {
List<InternalBrowserListener> list = h;
if (list != null) {
for (InternalBrowserListener internalBrowserListener : list) {
if (this.e == internalBrowserListener.hashCode()) {
internalBrowserListener.onBrowserDismiss();
a(internalBrowserListener);
return;
}
}
}
}
public void j() {
List<InternalBrowserListener> list = h;
if (list != null) {
for (InternalBrowserListener internalBrowserListener : list) {
if (this.c != null && internalBrowserListener.hashCode() == this.e) {
String url = this.c.getUrl();
if (url != null) {
internalBrowserListener.onExternalBrowserClick(url);
} else {
POBLog.debug("POBInternalBrowserActivity", "Can't open external browser as url is not available.", new Object[0]);
}
}
}
}
}
private void k() {
List<InternalBrowserListener> list = h;
if (list != null) {
for (InternalBrowserListener internalBrowserListener : list) {
if (this.e == internalBrowserListener.hashCode()) {
internalBrowserListener.onBrowserStart();
return;
}
}
}
}
public void l() {
WebView webView = this.c;
if (webView == null || !webView.canGoBack()) {
super.onBackPressed();
} else {
this.c.goBack();
}
}
public static void startNewActivity(@NonNull Context context, @NonNull String str, @NonNull InternalBrowserListener internalBrowserListener) {
if (h == null) {
h = new ArrayList();
}
h.add(internalBrowserListener);
Intent intent = new Intent(context, (Class<?>) POBInternalBrowserActivity.class);
intent.addFlags(268435456);
intent.putExtra("url", str);
intent.putExtra("listener_hash_code", internalBrowserListener.hashCode());
try {
POBUtils.startActivity(context, intent);
} catch (Exception e2) {
POBLog.error("POBInternalBrowserActivity", "Error starting internal browser activity: %s", e2.getMessage());
}
}
@Override
public void onBackPressed() {
l();
}
@Override
public void onCreate(@Nullable Bundle bundle) {
super.onCreate(bundle);
RelativeLayout c2 = c();
if (Build.VERSION.SDK_INT >= 30) {
POBUtils.setSystemFitWindowsForEdgeToEdge(c2);
}
setContentView(c2);
this.g = (ViewGroup) findViewById(R.id.content);
this.e = getIntent().getIntExtra("listener_hash_code", 0);
a(getIntent().getStringExtra("url"));
k();
}
@Override
public void onDestroy() {
POBLog.debug("POBInternalBrowserActivity", "Activity on destroy called.", new Object[0]);
h();
AlertDialog alertDialog = this.f;
if (alertDialog != null) {
alertDialog.dismiss();
this.f = null;
}
super.onDestroy();
i();
}
private ImageView b() {
ImageView a2 = a(com.pubmatic.sdk.common.R.drawable.pob_ic_action_cancel);
a2.setOnClickListener(new a());
return a2;
}
private RelativeLayout c() {
RelativeLayout relativeLayout = new RelativeLayout(this);
relativeLayout.setBackgroundColor(-1);
a(relativeLayout);
return relativeLayout;
}
private ImageView d() {
ImageView a2 = a(com.pubmatic.sdk.common.R.drawable.pob_ic_action_web_site);
a2.setOnClickListener(new e());
return a2;
}
private ImageView e() {
ImageView a2 = a(com.pubmatic.sdk.common.R.drawable.pob_ic_action_forward);
this.b = a2;
a(a2, false);
this.b.setOnClickListener(new c());
return this.b;
}
private ImageView f() {
ImageView a2 = a(com.pubmatic.sdk.common.R.drawable.pob_ic_action_refresh);
a2.setOnClickListener(new d());
return a2;
}
private WebView g() {
POBWebView createInstance = POBWebView.createInstance(POBUtils.resolveWebViewContext(this));
if (createInstance != null) {
WebSettings settings = createInstance.getSettings();
settings.setJavaScriptEnabled(true);
settings.setLoadWithOverviewMode(true);
settings.setUseWideViewPort(true);
settings.setDomStorageEnabled(true);
createInstance.setWebViewClient(new f(this, null));
}
return createInstance;
}
public void h() {
ViewGroup viewGroup = this.g;
if (viewGroup != null) {
viewGroup.removeAllViews();
this.g = null;
}
WebView webView = this.c;
if (webView != null) {
webView.setWebViewClient(null);
this.c.destroy();
this.c = null;
}
}
public String b(int i) {
if (i == 0) {
return "Certificate Invalid.";
}
if (i == 1) {
return "Certificate Expired.";
}
if (i == 2) {
return "Domain Name Mismatched.";
}
if (i == 3) {
return "Untrusted Certificate.";
}
if (i == 4) {
return "Invalid Date.";
}
if (i != 5) {
return "SSL Error.";
}
return "Certificate Invalid.";
}
private void a(InternalBrowserListener internalBrowserListener) {
List list = h;
if (list != null) {
list.remove(internalBrowserListener);
if (h.isEmpty()) {
h = null;
}
}
}
private void a(String str) {
if (this.c != null && !POBUtils.isNullOrEmpty(str)) {
POBLog.debug("POBInternalBrowserActivity", "Loading url in internal browser : %s", str);
this.c.loadUrl(str);
} else {
POBLog.warn("POBInternalBrowserActivity", "Unable to open internal browser : %s", "Invalid url");
}
}
private void a(RelativeLayout relativeLayout) {
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(-1, POBUtils.convertDpToPixel(40));
layoutParams.addRule(12);
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setId(com.pubmatic.sdk.common.R.id.pob_dialog_id);
linearLayout.setBackgroundColor(-12303292);
linearLayout.setOrientation(0);
linearLayout.setVerticalGravity(16);
relativeLayout.addView(linearLayout, layoutParams);
LinearLayout.LayoutParams layoutParams2 = new LinearLayout.LayoutParams(-1, -1, 1.0f);
layoutParams2.setMargins(2, 4, 2, 2);
linearLayout.addView(b(), layoutParams2);
linearLayout.addView(a(), layoutParams2);
linearLayout.addView(e(), layoutParams2);
linearLayout.addView(f(), layoutParams2);
linearLayout.addView(d(), layoutParams2);
RelativeLayout.LayoutParams layoutParams3 = new RelativeLayout.LayoutParams(-1, 0);
layoutParams3.addRule(10);
layoutParams3.addRule(2, linearLayout.getId());
WebView g = g();
this.c = g;
if (g != null) {
relativeLayout.addView(g, layoutParams3);
RelativeLayout.LayoutParams layoutParams4 = new RelativeLayout.LayoutParams(-2, -2);
layoutParams4.addRule(13);
ProgressBar progressBar = new ProgressBar(this, null, R.attr.progressBarStyle);
this.d = progressBar;
relativeLayout.addView(progressBar, layoutParams4);
return;
}
finish();
}
private ImageView a() {
ImageView a2 = a(com.pubmatic.sdk.common.R.drawable.pob_ic_action_back);
this.a = a2;
a(a2, false);
this.a.setOnClickListener(new b());
return this.a;
}
private ImageView a(int i) {
ImageView imageView = new ImageView(this);
ImageView.ScaleType scaleType = ImageView.ScaleType.FIT_CENTER;
imageView.setImageResource(i);
imageView.setBackgroundColor(getResources().getColor(R.color.background_dark, getTheme()));
imageView.setScaleType(scaleType);
return imageView;
}
public void a(ImageView imageView, boolean z) {
if (z) {
imageView.setEnabled(true);
imageView.setImageAlpha(255);
} else {
imageView.setEnabled(false);
imageView.setImageAlpha(160);
}
}
}