正在查看: Hopscotch v9.7.2 应用的 HSWebviewActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Hopscotch v9.7.2 应用的 HSWebviewActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package in.hopscotch.android.activity;
import android.content.Intent;
import android.graphics.drawable.ColorDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.webkit.CookieManager;
import android.webkit.JavascriptInterface;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.FrameLayout;
import in.hopscotch.android.activity.customerinfo.LoginActivity;
import in.hopscotch.android.api.factory.AccountCardApiFactory;
import in.hopscotch.android.application.HsApplication;
import java.util.HashMap;
public class HSWebviewActivity extends in.hopscotch.android.activity.parent.m implements in.hopscotch.android.interfaces.g {
private static final int GO_TO_JOIN_SCREEN = 10009;
private static final String WEB_VIEW_INTERFACE = "WebViewInterface";
public static final int z = 0;
private in.hopscotch.android.databinding.j0 binding;
private boolean fromNotification;
private String urlForRedirect;
public static class a {
private final in.hopscotch.android.interfaces.g hsWebViewEventHandler;
public a(in.hopscotch.android.interfaces.g gVar) {
this.hsWebViewEventHandler = gVar;
}
@JavascriptInterface
public void login(String str) {
in.hopscotch.android.interfaces.g gVar = this.hsWebViewEventHandler;
if (gVar != null) {
((HSWebviewActivity) gVar).m1(str);
}
}
}
public class b extends WebViewClient {
public b() {
HSWebviewActivity.this.Z0();
}
@Override
public final void onPageFinished(WebView webView, String str) {
super.onPageFinished(webView, str);
HSWebviewActivity.this.W0();
}
@Override
public final boolean shouldOverrideUrlLoading(WebView webView, WebResourceRequest webResourceRequest) {
String uri = webResourceRequest.getUrl().toString();
String host = Uri.parse(uri).getHost();
if (uri == null) {
return true;
}
boolean startsWith = uri.startsWith("tel:");
in.hopscotch.android.interfaces.g gVar = HSWebviewActivity.this;
if (startsWith) {
gVar.startActivity(new Intent("android.intent.action.DIAL", Uri.parse(uri)));
return true;
}
if (uri.startsWith("mailto:")) {
gVar.startActivity(new Intent("android.intent.action.SENDTO", Uri.parse(uri)));
return true;
}
if (!TextUtils.isEmpty(host) && host.contains("hopscotch.in")) {
return false;
}
if (!TextUtils.isEmpty(host) && uri.startsWith("fb://") && host.contains("profile")) {
return true;
}
if (uri.contains("qa.")) {
HashMap q = android.support.v4.media.c.q("x-nv", "true");
q.put("x-nv-security-magic", HsApplication.b().b.getN7DebugMagicSecurityKey());
webView.loadUrl(uri, q);
} else {
webView.loadUrl(uri);
}
return true;
}
}
public static boolean l1(HSWebviewActivity hSWebviewActivity) {
if (hSWebviewActivity.fromNotification) {
hSWebviewActivity.startActivity(in.hopscotch.android.util.s0.c(hSWebviewActivity));
hSWebviewActivity.finish();
return true;
}
if (hSWebviewActivity.getIntent() == null || !hSWebviewActivity.getIntent().getBooleanExtra("EXTERNAL_ACTION", false)) {
return false;
}
in.hopscotch.android.application.a0.f(hSWebviewActivity, hSWebviewActivity.getIntent());
return true;
}
public final void m1(String str) {
this.urlForRedirect = str;
LoginActivity.i.getClass();
LoginActivity.a.e(this, "Webview", "", "REDIRECT_WEBVIEW", false, null, GO_TO_JOIN_SCREEN);
}
@Override
public final void onActivityResult(int i, int i2, Intent intent) {
super.onActivityResult(i, i2, intent);
if (i == GO_TO_JOIN_SCREEN && i2 == -1) {
Z0();
AccountCardApiFactory.getInstance().generateLoginTicketCall(new l0(this));
}
}
@Override
public final void onCreate(Bundle bundle) {
super.onCreate(bundle);
com.google.firebase.crashlytics.c.a().d("ACTIVITY_NAME", getClass().getName());
LayoutInflater layoutInflater = getLayoutInflater();
FrameLayout frameLayout = this.t;
int i = in.hopscotch.android.databinding.j0.f;
this.binding = (in.hopscotch.android.databinding.j0) androidx.databinding.p.M(layoutInflater, 2131558466, frameLayout, true, androidx.databinding.g.e());
this.x.c();
this.r.setDrawerLockMode(1, 3);
String stringExtra = getIntent().getStringExtra("WEB_URL");
this.fromNotification = getIntent().getBooleanExtra("FROM_NOTIFICATION", false);
if (!TextUtils.isEmpty(stringExtra)) {
if (stringExtra.contains(".pdf") || stringExtra.contains(".PDF") || stringExtra.contains(".jpg") || stringExtra.contains(".JPG") || stringExtra.contains(".jpeg") || stringExtra.contains(".JPEG") || stringExtra.contains(".png") || stringExtra.contains(".PNG") || stringExtra.contains(".gif") || stringExtra.contains(".GIF") || stringExtra.contains(".bmp") || stringExtra.contains(".BMP") || stringExtra.contains(".tiff") || stringExtra.contains(".TIFF") || stringExtra.contains(".webp") || stringExtra.contains(".WEBP")) {
this.binding.d.setVisibility(8);
startActivity(new Intent("android.intent.action.VIEW", Uri.parse(stringExtra)));
finish();
} else {
this.binding.d.clearHistory();
this.binding.d.clearCache(true);
this.binding.d.setScrollBarStyle(33554432);
this.binding.d.setWebViewClient(new b());
this.binding.d.addJavascriptInterface(new a(this), WEB_VIEW_INTERFACE);
WebSettings settings = this.binding.d.getSettings();
settings.setDomStorageEnabled(true);
settings.setCacheMode(2);
settings.setSupportMultipleWindows(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setJavaScriptEnabled(true);
settings.setUseWideViewPort(true);
settings.setLoadWithOverviewMode(true);
settings.setBuiltInZoomControls(true);
settings.setDisplayZoomControls(true);
settings.setSupportZoom(true);
if (stringExtra.contains("qa.")) {
HashMap q = android.support.v4.media.c.q("x-nv", "true");
q.put("x-nv-security-magic", HsApplication.b().b.getN7DebugMagicSecurityKey());
this.binding.d.loadUrl(stringExtra, q);
} else {
this.binding.d.loadUrl(stringExtra);
}
}
}
getSupportActionBar().p(new ColorDrawable(getResources().getColor(2131100828)));
getOnBackPressedDispatcher().f(this, new k0(this, true));
}
@Override
public final void onDestroy() {
CookieManager.getInstance().removeAllCookies(new j0());
super.onDestroy();
}
@Override
public final boolean onOptionsItemSelected(MenuItem menuItem) {
if (menuItem.getItemId() != 16908332) {
return super.onOptionsItemSelected(menuItem);
}
onBackPressed();
return true;
}
}