正在查看: Credmex v3.12.2 应用的 FaceCheckNetWarrantyUtil.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Credmex v3.12.2 应用的 FaceCheckNetWarrantyUtil.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.credmex.utils;
import android.content.Context;
import androidx.annotation.NonNull;
import com.credmex.commom.CommonActivity;
import com.google.gson.Gson;
import com.megvii.livenessdetection.LivenessLicenseManager;
import com.veda.supertoolkit.customtools.Logger;
import com.veda.supertoolkit.resourcetools.DeviceUtils;
import com.veda.supertoolkit.widgets.BaseUtils;
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 onError();
void onStart();
void onSuccess();
}
public static void a(Context context, @NonNull final ICallBack iCallBack) {
iCallBack.onStart();
Flowable.G(context).b0(Schedulers.c()).H(new Function<Context, LivenessLicenseManager>() {
public LivenessLicenseManager apply(Context context2) throws Exception {
LivenessLicenseManager livenessLicenseManager = new LivenessLicenseManager(context2);
OkHttpClient.Builder l2 = new OkHttpClient.Builder().l(new HostnameVerifier() {
@Override
public boolean verify(String str, SSLSession sSLSession) {
Logger.c().b(new Gson().t(sSLSession.getValueNames()));
return true;
}
});
TimeUnit timeUnit = TimeUnit.SECONDS;
Response execute = l2.e(15L, timeUnit).p(15L, timeUnit).c().a(new Request.Builder().k("https://api-sgp.megvii.com/faceid/v1/sdk/auth").a("Content-type", "text/plain").h(RequestBody.d(MediaType.d("text/plan; charset=utf-8"), livenessLicenseManager.c(DeviceUtils.j(context2)))).b()).execute();
if (!execute.isSuccessful()) {
throw new ConnectException();
}
livenessLicenseManager.d(execute.a().A());
return livenessLicenseManager;
}
}).J(AndroidSchedulers.a()).W(new Consumer<LivenessLicenseManager>() {
public void accept(LivenessLicenseManager livenessLicenseManager) throws Exception {
try {
try {
if (livenessLicenseManager.b() > 0) {
ICallBack.this.onSuccess();
} else {
ICallBack.this.onError();
}
} catch (Exception e) {
e.printStackTrace();
}
} finally {
ICallBack.this.a();
}
}
}, new Consumer<Throwable>() {
public void accept(Throwable th) throws Exception {
try {
try {
ICallBack.this.onError();
} catch (Exception e) {
e.printStackTrace();
}
} finally {
ICallBack.this.a();
}
}
});
}
public static class DefaultCallBack implements ICallBack {
CommonActivity a;
public DefaultCallBack(@NonNull CommonActivity commonActivity) {
this.a = commonActivity;
}
@Override
public void a() {
if (b()) {
this.a.dismissLoadingDialog();
}
}
public boolean b() {
com.veda.android.bananalibrary.net.ICallBack iCallBack = this.a;
return (iCallBack == null || iCallBack.isFinishing() || this.a.isDestroyed()) ? false : true;
}
@Override
public void onError() {
if (b()) {
?? r0 = this.a;
BaseUtils.f((Context) r0, r0.getResources().getString(2131820861));
}
}
@Override
public void onStart() {
if (b()) {
this.a.showLoadingDialog();
}
}
@Override
public void onSuccess() {
}
}
}