正在查看: Crafto v9.3.3 应用的 PaytmAssist.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Crafto v9.3.3 应用的 PaytmAssist.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package easypay.appinvoke.manager;
import Wn.c;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
import android.os.Environment;
import android.os.StatFs;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.JavascriptInterface;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.TextView;
import androidx.annotation.Keep;
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.JobIntentService;
import androidx.fragment.app.FragmentTransaction;
import com.google.firebase.perf.network.FirebasePerfOkHttpClient;
import com.google.firebase.perf.network.FirebasePerfUrlConnection;
import com.google.gson.j;
import easypay.appinvoke.actions.C0412b;
import easypay.appinvoke.actions.EasypayBrowserFragment;
import easypay.appinvoke.listeners.AppCallbacks;
import easypay.appinvoke.listeners.WebClientListener;
import easypay.appinvoke.utils.AssistLogs;
import easypay.appinvoke.utils.EasyPayConfigDownloader;
import in.juspay.hyper.constants.LogSubCategory;
import in.juspay.hypersdk.core.PaymentConstants;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import og.d;
import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import org.json.JSONException;
import org.json.JSONObject;
@Keep
public class PaytmAssist {
private static PaytmAssist assistInstance = null;
private static Context context = null;
private static boolean isEasyPayActive = true;
public static boolean isEasyPayEnabled = true;
private String appVersionTest;
private String bankName;
private String cardDetails;
private String cardScheme;
private easypay.appinvoke.manager.b easyPayHelper;
private EasypayBrowserFragment fragment;
private Integer fragmentViewId;
private boolean isAssistEngineTerminated;
private String lastLoadedUrl;
private AppCompatActivity mActivity;
private StringBuilder mAnalyticsExtraParam;
private C0412b mAnalyticsManager;
private AppCallbacks mAppCallback;
private C4.a mEventCallBack;
private ArrayList<WebClientListener> mWcListListener;
private String mid;
private String orderId;
private String payType;
private WebViewClient paymentWebClient;
private EasypayWebViewClient webClientInstance;
private WebView webView = null;
private Map<String, Object> mEventMap = new HashMap();
private boolean isShowNbLoader = false;
private String configUrlToHit = "";
private boolean isFragmentResumed = true;
private boolean isFragmentStopped = true;
public class a implements Runnable {
@Override
public final void run() {
try {
HttpURLConnection httpURLConnection = (HttpURLConnection) ((URLConnection) FirebasePerfUrlConnection.instrument(new URL("https://secure.paytmpayments.com/payassist/api/getURLByAppVersion").openConnection()));
httpURLConnection.setReadTimeout(15000);
httpURLConnection.setConnectTimeout(13000);
httpURLConnection.setRequestMethod("POST");
JSONObject jSONObject = new JSONObject();
jSONObject.put("deviceType", LogSubCategory.LifeCycle.ANDROID);
jSONObject.put("version", "8.2.2");
jSONObject.put(PaymentConstants.ORDER_ID_CAMEL, PaytmAssist.getAssistInstance().getOrderId());
jSONObject.put("mid", PaytmAssist.getAssistInstance().getMid());
jSONObject.put("deviceType", "ANDROID");
AssistLogs.printLog("Fetch APi requestURL:https://secure.paytmpayments.com/payassist/api/getURLByAppVersion", this);
httpURLConnection.setRequestProperty("Content-Type", "application/json");
OutputStream outputStream = httpURLConnection.getOutputStream();
outputStream.write(jSONObject.toString().getBytes());
outputStream.close();
InputStream inputStream = httpURLConnection.getInputStream();
BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream, 5120);
StringBuilder sb = new StringBuilder();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
while (true) {
String readLine = bufferedReader.readLine();
if (readLine == null) {
bufferedInputStream.close();
return;
}
sb.append(readLine);
}
} catch (MalformedURLException e) {
e = e;
e.printStackTrace();
} catch (IOException e2) {
e = e2;
e.printStackTrace();
} catch (JSONException e3) {
e = e3;
e.printStackTrace();
}
}
}
public class b implements Runnable {
public class a implements Runnable {
public a() {
}
@Override
public final void run() {
PaytmAssist.this.initAssist();
}
}
public b() {
}
@Override
public final void run() {
AppCompatActivity appCompatActivity;
PaytmAssist paytmAssist = PaytmAssist.this;
if (paytmAssist.mid != null) {
try {
HashMap hashMap = new HashMap();
hashMap.put("mid", paytmAssist.mid);
if (FirebasePerfOkHttpClient.execute(new OkHttpClient().newCall(new Request.Builder().url("https://secure.paytmpayments.com/merchant-settlement-service/paytmAssist/enable").post(RequestBody.create(MediaType.parse("application/json; charset=utf-8"), new j().a().h(hashMap))).build())).body() == null || (appCompatActivity = paytmAssist.mActivity) == null) {
return;
}
appCompatActivity.runOnUiThread(new a());
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
private void accessCheckApi() {
new Thread(new b()).start();
}
private void configureWebClient() {
WebViewClient paymentWebClient = getAssistInstance().getPaymentWebClient();
if (paymentWebClient == null) {
paymentWebClient = getAssistInstance().getWebClientInstance();
}
this.webView.setWebViewClient(paymentWebClient);
}
private void downloadBankWiseConfig(String str) {
try {
Intent intent = new Intent((Context) this.mActivity, (Class<?>) EasyPayConfigDownloader.class);
intent.putExtra("extra_bank_req", str);
Context baseContext = this.mActivity.getBaseContext();
int i = EasyPayConfigDownloader.j;
JobIntentService.a(baseContext, EasyPayConfigDownloader.class, 2321, intent);
} catch (Exception unused) {
}
}
private void fetchAPIByAppVersion(String str) {
new Thread(new a()).start();
}
private String freeStorage() {
try {
StatFs statFs = new StatFs(Environment.getExternalStorageDirectory().getPath());
return Long.toString((statFs.getBlockSize() * statFs.getBlockCount()) / 1048576);
} catch (Exception unused) {
return "";
}
}
public static synchronized PaytmAssist getAssistInstance() {
PaytmAssist paytmAssist;
synchronized (PaytmAssist.class) {
try {
if (assistInstance == null) {
assistInstance = new PaytmAssist();
}
paytmAssist = assistInstance;
} catch (Throwable th) {
throw th;
}
}
return paytmAssist;
}
public static Context getContext() {
return context;
}
public static boolean getEasyPayActiveStatus() {
return isEasyPayActive;
}
public static void getEasyPayEnabledStatus(boolean z) {
isEasyPayEnabled = z;
}
private String getNetworkType(Context context2) {
try {
ConnectivityManager connectivityManager = (ConnectivityManager) context2.getSystemService("connectivity");
NetworkInfo activeNetworkInfo = connectivityManager != null ? connectivityManager.getActiveNetworkInfo() : null;
if (activeNetworkInfo != null && activeNetworkInfo.isConnected()) {
if (activeNetworkInfo.getType() == 1) {
return "WIFI";
}
if (activeNetworkInfo.getType() == 0) {
switch (activeNetworkInfo.getSubtype()) {
}
}
}
return null;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
private WebViewClient getPaymentWebClient() {
return this.paymentWebClient;
}
private void inflatePaytmAssist() {
try {
AssistLogs.printLog("Creating EasypayBrowserFragment", this);
EasypayBrowserFragment newInstance = EasypayBrowserFragment.newInstance();
this.fragment = newInstance;
setFragment(newInstance);
FragmentTransaction beginTransaction = this.mActivity.getSupportFragmentManager().beginTransaction();
if (this.mActivity == null || this.fragment.isAdded()) {
return;
}
beginTransaction.add(this.fragmentViewId.intValue(), this.fragment);
beginTransaction.commit();
this.webView.setWebChromeClient(new b.a());
this.mAnalyticsManager.c(this.mActivity.getPackageName(), this.orderId, this.mActivity.getPackageManager().getPackageInfo(this.mActivity.getPackageName(), 0).versionName);
C0412b c0412b = this.mAnalyticsManager;
c0412b.a.put("mid", this.mid);
} catch (Exception e) {
e.printStackTrace();
}
}
public void initAssist() {
Context context2;
C0412b c0412b;
AppCompatActivity appCompatActivity;
String str;
AppCompatActivity appCompatActivity2;
String str2 = "Version Not Found";
AppCompatActivity appCompatActivity3 = this.mActivity;
if (appCompatActivity3 == null || (context2 = context) == null) {
return;
}
try {
if (isEasyPayEnabled) {
if (J1.a.checkSelfPermission(context2, "android.permission.READ_SMS") == 0) {
C0412b c0412b2 = this.mAnalyticsManager;
c0412b2.a.put("smsPermission", Boolean.TRUE);
AssistLogs.printLog("AssistAnalytics:smsPermission:true", c0412b2);
inflatePaytmAssist();
if (this.mActivity.getPackageManager() != null) {
str2 = this.mActivity.getPackageManager().getPackageInfo(this.mActivity.getPackageName(), 0).versionName;
c0412b = this.mAnalyticsManager;
appCompatActivity = this.mActivity;
} else {
c0412b = this.mAnalyticsManager;
appCompatActivity2 = this.mActivity;
str = appCompatActivity2.getPackageName();
}
} else {
if (J1.a.checkSelfPermission(context, "android.permission.READ_SMS") == 0 || !isEasyPayEnabled) {
return;
}
C0412b c0412b3 = this.mAnalyticsManager;
c0412b3.a.put("smsPermission", Boolean.FALSE);
AssistLogs.printLog("AssistAnalytics:smsPermission:false", c0412b3);
inflatePaytmAssist();
if (this.mActivity.getPackageManager() != null) {
str2 = this.mActivity.getPackageManager().getPackageInfo(this.mActivity.getPackageName(), 0).versionName;
c0412b = this.mAnalyticsManager;
appCompatActivity = this.mActivity;
} else {
c0412b = this.mAnalyticsManager;
appCompatActivity2 = this.mActivity;
str = appCompatActivity2.getPackageName();
}
}
c0412b.c(str, this.orderId, str2);
}
str2 = appCompatActivity3.getPackageManager().getPackageInfo(this.mActivity.getPackageName(), 0).versionName;
c0412b = this.mAnalyticsManager;
appCompatActivity = this.mActivity;
str = appCompatActivity.getPackageName();
c0412b.c(str, this.orderId, str2);
} catch (Exception unused) {
}
}
private static void setAssistInstance(PaytmAssist paytmAssist) {
assistInstance = paytmAssist;
}
private void setConfigUrlToHit(String str) {
this.configUrlToHit = str;
}
public static void setContext(Context context2) {
context = context2;
}
public static void setEasyPayActiveStatus(boolean z) {
isEasyPayActive = z;
}
public static boolean setEasyPayEnabledStatus() {
return isEasyPayEnabled;
}
private void setEasyPayHelper() {
this.easyPayHelper = new easypay.appinvoke.manager.b();
}
private void setFragmentViewId(Integer num) {
this.fragmentViewId = num;
}
private void setWebClientInstance(Activity activity) {
if (activity != null) {
this.webClientInstance = new EasypayWebViewClient(activity);
}
}
private void setWebView(WebView webView) {
this.webView = webView;
}
public String geTxnBank() {
if (TextUtils.isEmpty(this.bankName)) {
return null;
}
return this.bankName;
}
public String getAppVersionTest() {
return this.appVersionTest;
}
public boolean getAssistEngineTerminatedStatus() {
return this.isAssistEngineTerminated;
}
public String getCardDetails() {
return this.cardDetails;
}
public String getConfigUrlToHit() {
return this.configUrlToHit;
}
public easypay.appinvoke.manager.b getEasyPayHelper() {
easypay.appinvoke.manager.b bVar = this.easyPayHelper;
return bVar == null ? new easypay.appinvoke.manager.b() : bVar;
}
public EasypayBrowserFragment getFragment() {
return this.fragment;
}
public String getLastLoadedUrl() {
return this.lastLoadedUrl;
}
public String getMid() {
return this.mid;
}
public String getOrderId() {
return this.orderId;
}
public String getTxnPayType() {
if (TextUtils.isEmpty(this.payType)) {
this.payType = "";
}
return this.payType;
}
public EasypayWebViewClient getWebClientInstance() {
if (this.webClientInstance == null && this.mActivity != null) {
this.webClientInstance = new EasypayWebViewClient(this.mActivity);
}
return this.webClientInstance;
}
public WebView getWebView() {
return this.webView;
}
public StringBuilder getmAnalyticsExtraParam() {
return this.mAnalyticsExtraParam;
}
public C0412b getmAnalyticsManager() {
return this.mAnalyticsManager;
}
public C4.a getmEventCallBack() {
return null;
}
public Map<String, Object> getmEventMap() {
return this.mEventMap;
}
public ArrayList<WebClientListener> getmWcListListener() {
return this.mWcListListener;
}
public boolean isAssistLayoutPopped() {
EasypayBrowserFragment easypayBrowserFragment = this.fragment;
if (easypayBrowserFragment != null) {
return easypayBrowserFragment.isAssistVisible;
}
return false;
}
public boolean isFragmentPaused() {
return this.isFragmentStopped;
}
public boolean isFragmentResumed() {
return this.isFragmentResumed;
}
public void registerSMSCallBack(AppCallbacks appCallbacks) {
this.mAppCallback = appCallbacks;
}
public void removeAssist() {
try {
EasypayBrowserFragment easypayBrowserFragment = this.fragment;
if (easypayBrowserFragment != null && easypayBrowserFragment.isAdded()) {
FragmentTransaction beginTransaction = this.mActivity.getSupportFragmentManager().beginTransaction();
beginTransaction.remove(this.fragment);
beginTransaction.commitAllowingStateLoss();
}
if (this.mActivity != null) {
this.mActivity = null;
}
if (assistInstance != null) {
assistInstance = null;
}
if (context != null) {
context = null;
}
} catch (Exception unused) {
}
}
@JavascriptInterface
public void sendEvent(String str, String str2, String str3) {
Intent intent = new Intent();
intent.setAction("com.paytm.com.paytm.pgsdk.easypay.appinvoke.CUSTOM_EVENT");
intent.putExtra("eventName", str);
intent.putExtra("data0", str2);
intent.putExtra("data1", str3);
this.mActivity.sendBroadcast(intent);
}
public void setAppSMSCallback(String str) {
AppCallbacks appCallbacks = this.mAppCallback;
if (appCallbacks != null) {
appCallbacks.smsReceivedCallback(str);
}
}
public void setAppVersionTest(String str) {
AssistLogs.printLog("AppVersion:" + str, this);
this.appVersionTest = str;
}
public void setAssistEngineTerminatedStatus(boolean z) {
this.isAssistEngineTerminated = z;
}
public boolean setAssistLoader() {
return this.isShowNbLoader;
}
public void setBankInfo(String str, String str2, String str3) {
if (!TextUtils.isEmpty(str) && str.contains("-")) {
str = str.substring(0, str.indexOf("-"));
}
this.bankName = str;
this.payType = str2.toLowerCase();
this.cardScheme = str3.toLowerCase();
C0412b c0412b = this.mAnalyticsManager;
if (c0412b != null) {
String str4 = this.payType;
c0412b.a.put("cardType", str4);
AssistLogs.printLog("AssistAnalytics:cardType:" + str4, c0412b);
C0412b c0412b2 = this.mAnalyticsManager;
c0412b2.a.put("cardIssuer", str3);
AssistLogs.printLog("AssistAnalytics:cardIssuer:".concat(str3), c0412b2);
this.cardDetails = d.b(str, str3, str2);
String lowerCase = (str + str3 + str2).toLowerCase();
if (lowerCase.contains("ATM") || lowerCase.contains("idebit") || lowerCase.contains("atm")) {
C0412b c0412b3 = this.mAnalyticsManager;
c0412b3.a.put("NonOTPRequest", Boolean.TRUE);
AssistLogs.printLog("AssistAnalytics:NonOTPRequest:true", c0412b3);
}
try {
JSONObject jSONObject = new JSONObject();
jSONObject.put("bnkCode", str);
jSONObject.put("payType", str2);
jSONObject.put("cardScheme", str3);
fetchAPIByAppVersion(jSONObject.toString());
} catch (JSONException e) {
e.printStackTrace();
}
}
}
public void setFragment(EasypayBrowserFragment easypayBrowserFragment) {
this.fragment = easypayBrowserFragment;
}
public void setFragmentPaused(boolean z) {
this.isFragmentStopped = z;
}
public void setFragmentResumed(boolean z) {
this.isFragmentResumed = z;
}
public void setLastLoadedUrl(String str) {
this.lastLoadedUrl = str;
}
public void setLoaderVisibility(boolean z) {
this.isShowNbLoader = z;
}
public void setMid(String str) {
this.mid = str;
}
public void setOrderId(String str) {
this.orderId = str;
}
public void setPaymentWebClient(WebViewClient webViewClient) {
if (webViewClient == null) {
webViewClient = this.webClientInstance;
}
this.paymentWebClient = webViewClient;
configureWebClient();
}
public void setToolbarText(AppCompatActivity appCompatActivity, String str) {
View inflate = appCompatActivity.getLayoutInflater().inflate(c.easy_pay_toolbar, (ViewGroup) null);
((TextView) inflate.findViewById(Wn.b.easy_pay_toolbar_tv)).setText(str);
ActionBar supportActionBar = appCompatActivity.getSupportActionBar();
if (supportActionBar != null) {
supportActionBar.n(inflate);
supportActionBar.v(false);
}
}
public void setTxnBank(String str) {
if (TextUtils.isEmpty(str)) {
return;
}
this.bankName = str;
}
public void setTxnPayType(String str) {
if (TextUtils.isEmpty(str)) {
return;
}
this.payType = str;
}
public void setmAnalyticsExtraParam(StringBuilder sb) {
this.mAnalyticsExtraParam = sb;
}
public void setmAnalyticsManager(C0412b c0412b) {
this.mAnalyticsManager = c0412b;
}
public void setmWcListListener(ArrayList<WebClientListener> arrayList) {
this.mWcListListener = arrayList;
}
public void startAssist() {
accessCheckApi();
}
public boolean startConfigAssist(Context context2, Boolean bool, Boolean bool2, Integer num, WebView webView, Activity activity, String str, String str2) {
context = context2;
this.mActivity = (AppCompatActivity) activity;
isEasyPayActive = bool.booleanValue();
isEasyPayEnabled = bool2.booleanValue();
setWebView(webView);
setContext(context2);
setFragmentViewId(num);
this.orderId = str;
C0412b c0412b = new C0412b();
c0412b.a = new HashMap<>();
this.mAnalyticsManager = c0412b;
StringBuilder sb = new StringBuilder();
this.mAnalyticsExtraParam = sb;
sb.append("networkInfo");
if (getNetworkType(context) != null) {
this.mAnalyticsExtraParam.append(getNetworkType(context));
}
this.mAnalyticsExtraParam.append("deviceInfo");
StringBuilder sb2 = this.mAnalyticsExtraParam;
String str3 = Build.MANUFACTURER;
sb2.append(str3);
StringBuilder sb3 = this.mAnalyticsExtraParam;
String str4 = Build.MODEL;
sb3.append(str4);
StringBuilder sb4 = this.mAnalyticsExtraParam;
String str5 = Build.DEVICE;
sb4.append(str5);
StringBuilder sb5 = this.mAnalyticsExtraParam;
String str6 = Build.BRAND;
sb5.append(str6);
this.mAnalyticsExtraParam.append("Security patchLevel:");
this.mAnalyticsExtraParam.append(Build.DISPLAY);
String freeStorage = freeStorage();
if (TextUtils.isEmpty(freeStorage)) {
freeStorage = "N/A";
}
this.mAnalyticsExtraParam.append(freeStorage);
this.mEventMap.put("deviceInfo", str3 + "|" + str4 + "|" + str5 + "|" + str6 + "|" + freeStorage());
DisplayMetrics displayMetrics = new DisplayMetrics();
((Activity) getContext()).getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
Map<String, Object> map = this.mEventMap;
StringBuilder sb6 = new StringBuilder();
sb6.append(displayMetrics.heightPixels);
sb6.append("|");
sb6.append(displayMetrics.widthPixels);
map.put("display", sb6.toString());
double d2 = (double) displayMetrics.densityDpi;
Map<String, Object> map2 = this.mEventMap;
map2.put("displayInInches", (((double) displayMetrics.heightPixels) / d2) + "|" + (displayMetrics.widthPixels / d2));
this.fragmentViewId = num;
this.mid = str2;
this.mWcListListener = new ArrayList<>();
setWebClientInstance(activity);
this.webView.addJavascriptInterface(this.mActivity, "Android");
setOrderId(this.orderId);
setMid(this.mid);
setEasyPayHelper();
C0412b c0412b2 = this.mAnalyticsManager;
boolean booleanValue = bool2.booleanValue();
c0412b2.a.put("isAssistEnable", bool2);
AssistLogs.printLog("AssistAnalytics:isAssistEnabled:" + booleanValue, c0412b2);
return true;
}
private void setWebClientInstance(EasypayWebViewClient easypayWebViewClient) {
this.webClientInstance = easypayWebViewClient;
}
}