正在查看: 新暖心缘 v8.1.1 应用的 PayWebViewActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 新暖心缘 v8.1.1 应用的 PayWebViewActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.luanxingyuan.app.activity;
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.Uri;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.JavascriptInterface;
import android.webkit.JsResult;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ProgressBar;
import butterknife.BindView;
import com.faceunity.wrapper.faceunity;
import com.luanxingyuan.app.base.BaseActivity;
import com.luanxingyuan.app.util.AlipayUtil;
import com.luanxingyuan.app.util.LogUtil;
import com.luanxingyuan.app.util.WechatPayUtil;
import com.tencent.open.SocialConstants;
public class PayWebViewActivity extends BaseActivity {
@BindView
ProgressBar mProgressBar;
@BindView
WebView mWebView;
private WebViewClient webViewClient = new a();
private WebChromeClient webChromeClient = new b();
class b extends WebChromeClient {
b() {
}
@Override
public boolean onJsAlert(WebView webView, String str, String str2, JsResult jsResult) {
AlertDialog.Builder builder = new AlertDialog.Builder(webView.getContext());
builder.setMessage(str2).setPositiveButton("确定", (DialogInterface.OnClickListener) null);
builder.setCancelable(false);
builder.create().show();
jsResult.confirm();
return true;
}
@Override
public void onProgressChanged(WebView webView, int i8) {
ProgressBar progressBar = PayWebViewActivity.this.mProgressBar;
if (progressBar != null) {
progressBar.setProgress(i8);
}
}
@Override
public void onReceivedTitle(WebView webView, String str) {
super.onReceivedTitle(webView, str);
}
}
public static void start(Context context, String str) {
Intent intent = new Intent(context, (Class<?>) PayWebViewActivity.class);
LogUtil.e("url+:-------->", str);
intent.putExtra(SocialConstants.PARAM_URL, str);
if (!(context instanceof Activity)) {
intent.addFlags(faceunity.FUAITYPE_HUMAN_PROCESSOR_DETECT);
}
context.startActivity(intent);
}
@JavascriptInterface
public void getClient(String str) {
StringBuilder sb = new StringBuilder();
sb.append("html调用客户端:");
sb.append(str);
}
@Override
protected View getContentView() {
return inflate(2131492916);
}
@Override
protected void onContentAdded() {
setTitle(getIntent().getStringExtra("title"));
String stringExtra = getIntent().getStringExtra(SocialConstants.PARAM_URL);
this.mWebView.setWebChromeClient(this.webChromeClient);
this.mWebView.setWebViewClient(this.webViewClient);
WebSettings settings = this.mWebView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setLoadWithOverviewMode(true);
settings.setUseWideViewPort(true);
settings.setLoadsImagesAutomatically(true);
settings.setDomStorageEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setMixedContentMode(2);
settings.setSupportZoom(false);
settings.setBuiltInZoomControls(false);
if (AlipayUtil.isAlipay(stringExtra)) {
if (AlipayUtil.goAlipays(this, stringExtra)) {
finish();
}
} else if (!WechatPayUtil.isWechatpay(stringExtra)) {
this.mWebView.loadUrl(stringExtra);
} else if (WechatPayUtil.goWechatpays(this, stringExtra)) {
finish();
}
}
@Override
protected void onDestroy() {
super.onDestroy();
WebView webView = this.mWebView;
if (webView != null) {
webView.destroy();
this.mWebView = null;
}
if (this.webChromeClient != null) {
this.webChromeClient = null;
}
if (this.webViewClient != null) {
this.webViewClient = null;
}
}
@Override
public boolean onKeyDown(int i8, KeyEvent keyEvent) {
if (!this.mWebView.canGoBack() || i8 != 4) {
return super.onKeyDown(i8, keyEvent);
}
this.mWebView.goBack();
return true;
}
class a extends WebViewClient {
a() {
}
@Override
public void onPageFinished(WebView webView, String str) {
ProgressBar progressBar = PayWebViewActivity.this.mProgressBar;
if (progressBar != null) {
progressBar.setVisibility(8);
}
}
@Override
public void onPageStarted(WebView webView, String str, Bitmap bitmap) {
ProgressBar progressBar = PayWebViewActivity.this.mProgressBar;
if (progressBar != null) {
progressBar.setVisibility(0);
}
shouldOverrideUrlLoading(webView, str);
}
@Override
public boolean shouldOverrideUrlLoading(WebView webView, WebResourceRequest webResourceRequest) {
webView.loadUrl(webResourceRequest.getUrl().toString());
return true;
}
@Override
public boolean shouldOverrideUrlLoading(WebView webView, String str) {
try {
if (!str.startsWith("weixin://") && !str.startsWith("alipays://")) {
return true;
}
Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
intent.setData(Uri.parse(str));
if (!(((BaseActivity) PayWebViewActivity.this).mContext instanceof Activity)) {
intent.addFlags(faceunity.FUAITYPE_HUMAN_PROCESSOR_DETECT);
}
PayWebViewActivity.this.startActivity(intent);
return true;
} catch (Exception unused) {
return false;
}
}
}
}