正在查看: Easycash v3.75.13 应用的 FaceCheckNetWarrantyUtil.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Easycash v3.75.13 应用的 FaceCheckNetWarrantyUtil.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.fintopia.livenessdetection.facev2.utils;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.res.Resources;
import androidx.annotation.NonNull;
import com.fintopia.livenessdetection.facev2.utils.FaceCheckNetWarrantyUtil;
import com.google.gson.Gson;
import com.lingyue.idnbaselib.GeneralConstants;
import com.lingyue.idnbaselib.R;
import com.lingyue.idnbaselib.livecheck.FaceDetectErrorStep;
import com.lingyue.idnbaselib.livecheck.LiveErrorCode;
import com.lingyue.idnbaselib.utils.JsonParamsBuilder;
import com.lingyue.idnbaselib.utils.ThirdPartEventUtils;
import com.lingyue.supertoolkit.resourcetools.DeviceUtils;
import com.lingyue.supertoolkit.widgets.BaseUtils;
import com.megvii.livenessdetection.LivenessLicenseManager;
import com.umeng.analytics.MobclickAgent;
import com.veda.android.bananalibrary.infrastructure.BaseActivity;
import com.veda.android.bananalibrary.infrastructure.Logger;
import io.reactivex.Flowable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.functions.Consumer;
import io.reactivex.functions.Function;
import io.reactivex.schedulers.Schedulers;
import java.net.ConnectException;
import java.util.concurrent.TimeUnit;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.SSLSession;
import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class FaceCheckNetWarrantyUtil {
public interface ICallBack {
void a();
void b();
void onStart();
void onSuccess();
}
public static boolean e(String str, SSLSession sSLSession) {
Logger.c().b(new Gson().t(sSLSession.getValueNames()));
return true;
}
public static LivenessLicenseManager f(Context context) throws Exception {
LivenessLicenseManager livenessLicenseManager = new LivenessLicenseManager(context);
OkHttpClient.Builder R = new OkHttpClient.Builder().R(new HostnameVerifier() {
@Override
public final boolean verify(String str, SSLSession sSLSession) {
boolean e;
e = FaceCheckNetWarrantyUtil.e(str, sSLSession);
return e;
}
});
TimeUnit timeUnit = TimeUnit.SECONDS;
Response S = R.e(15L, timeUnit).W(15L, timeUnit).c().a(new Request.Builder().l("https://api-sgp.megvii.com/faceid/v1/sdk/auth").a("Content-type", "text/plain").g(RequestBody.create(MediaType.g("text/plan; charset=utf-8"), livenessLicenseManager.getContext(DeviceUtils.h(context)))).b()).S();
if (!S.isSuccessful()) {
throw new ConnectException();
}
livenessLicenseManager.setLicense(S.a().v());
return livenessLicenseManager;
}
public static void g(ICallBack iCallBack, Context context, LivenessLicenseManager livenessLicenseManager) throws Exception {
try {
try {
if (livenessLicenseManager.checkCachedLicense() > 0) {
iCallBack.onSuccess();
} else {
iCallBack.a();
}
} catch (Exception e) {
e.printStackTrace();
MobclickAgent.reportError(context, e);
}
} finally {
iCallBack.b();
}
}
public static void h(ICallBack iCallBack, Context context, Throwable th) throws Exception {
try {
try {
iCallBack.a();
} catch (Exception e) {
MobclickAgent.reportError(context, e);
e.printStackTrace();
}
} finally {
iCallBack.b();
}
}
@SuppressLint({"CheckResult"})
public static void i(final Context context, @NonNull final ICallBack iCallBack) {
iCallBack.onStart();
Flowable.M(context).l0(Schedulers.c()).N(new Function() {
public final Object apply(Object obj) {
LivenessLicenseManager f;
f = FaceCheckNetWarrantyUtil.f((Context) obj);
return f;
}
}).Q(AndroidSchedulers.a()).g0(new Consumer() {
public final void accept(Object obj) {
FaceCheckNetWarrantyUtil.g(FaceCheckNetWarrantyUtil.ICallBack.this, context, (LivenessLicenseManager) obj);
}
}, new Consumer() {
public final void accept(Object obj) {
FaceCheckNetWarrantyUtil.h(FaceCheckNetWarrantyUtil.ICallBack.this, context, (Throwable) obj);
}
});
}
public static class DefaultCallBack implements ICallBack {
BaseActivity a;
public DefaultCallBack(@NonNull BaseActivity baseActivity) {
this.a = baseActivity;
}
private void d(String str, String str2) {
ThirdPartEventUtils.D(this.a, GeneralConstants.f, new JsonParamsBuilder().d("step").a(FaceDetectErrorStep.FACE_DETECT_FACEPP_V2.a()).d("errorCode").a(str).d("errorMessage").a(str2).c());
}
@Override
public void a() {
if (c()) {
BaseActivity baseActivity = this.a;
Resources resources = baseActivity.getResources();
int i = R.string.ec_live_auth_exception_tips;
BaseUtils.q(baseActivity, resources.getString(i));
d(LiveErrorCode.NETWORK_AUTHORIZATION_FAILED.a(), this.a.getString(i));
}
}
@Override
public void b() {
if (c()) {
this.a.dismissLoadingDialog();
}
}
public boolean c() {
BaseActivity baseActivity = this.a;
return (baseActivity == null || baseActivity.isFinishing() || this.a.isDestroyed()) ? false : true;
}
@Override
public void onStart() {
if (c()) {
this.a.showLoadingDialog();
}
}
@Override
public void onSuccess() {
}
}
}