导航菜单

页面标题

页面副标题

Easycash v3.75.13 - FaceCheckNetWarrantyUtil.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() {
        }
    }
}