导航菜单

页面标题

页面副标题

Easycash v3.75.13 - ECLiveCheckPreviewActivity.java 源代码

正在查看: Easycash v3.75.13 应用的 ECLiveCheckPreviewActivity.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.lingyue.easycash.authentication.activity;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Parcelable;
import android.text.TextUtils;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.OnClick;
import com.fintopia.livenessdetection.LivenessDetectionManager;
import com.fintopia.livenessdetection.advance.AdvanceLiveManager;
import com.fintopia.livenessdetection.facev5.FaceV5Manager;
import com.fintopia.livenessdetection.facev5.models.LiveDetectionArgs;
import com.fintopia.livenessdetection.models.LivenessConfig;
import com.google.gson.reflect.TypeToken;
import com.lingyue.easycash.R;
import com.lingyue.easycash.activity.SettingActivity;
import com.lingyue.easycash.adapters.AuthStepTipsAdapter;
import com.lingyue.easycash.appconfig.EasycashConfigKey;
import com.lingyue.easycash.appconfig.GeneralConfigManager;
import com.lingyue.easycash.authentication.AuthBusinessProcessor;
import com.lingyue.easycash.commom.EasyCashCommonActivity;
import com.lingyue.easycash.models.AuthStepTipsInfo;
import com.lingyue.easycash.models.survey.UserSatisfactionSurveyScene;
import com.lingyue.easycash.utils.AuthBackTipsDialogUtil;
import com.lingyue.easycash.utils.EasycashUmengEvent;
import com.lingyue.easycash.widght.survey.ECSurveyUtils;
import com.lingyue.idnbaselib.GeneralConstants;
import com.lingyue.idnbaselib.framework.lifecycle.LifecycleEvent;
import com.lingyue.idnbaselib.livecheck.FaceDetectErrorStep;
import com.lingyue.idnbaselib.livecheck.LiveErrorCode;
import com.lingyue.idnbaselib.model.IdnObserver;
import com.lingyue.idnbaselib.model.live.FaceIdCard;
import com.lingyue.idnbaselib.model.live.LivingActionNumber;
import com.lingyue.idnbaselib.model.live.VerifyLivenessMethodResponse;
import com.lingyue.idnbaselib.utils.JsonParamsBuilder;
import com.lingyue.idnbaselib.utils.ThirdPartEventUtils;
import com.lingyue.supertoolkit.permissiontools.permission.PermissionDenied;
import com.lingyue.supertoolkit.permissiontools.permission.PermissionGranted;
import com.lingyue.supertoolkit.screen.IScreenShotProtectPage;
import com.lingyue.supertoolkit.widgets.BaseUtils;
import com.sensorsdata.analytics.android.autotrack.aop.SensorsDataAutoTrackHelper;
import com.sensorsdata.analytics.android.sdk.SensorsDataInstrumented;
import com.yangqianguan.statistics.AutoTrackHelper;
import io.reactivex.Observable;
import io.reactivex.disposables.Disposable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;

public class ECLiveCheckPreviewActivity extends EasyCashCommonActivity implements IScreenShotProtectPage {
    public static final String KEY_LIVE_DETECTION_RESULT = "LiveDetectionResult";
    public static final int REQUEST_CODE_LIVENESS_PREVIEW = 1003;
    private LiveDetectionArgs B;
    private AuthStepTipsAdapter C;
    private ArrayList<AuthStepTipsInfo> D;
    private LivingActionNumber E = new LivingActionNumber();
    private ECSurveyUtils F;

    @BindView(R.id.rv_step)
    RecyclerView rvStep;

    private void Z() {
        if (r0(new Runnable() {
            @Override
            public final void run() {
                ECLiveCheckPreviewActivity.this.finish();
            }
        })) {
            return;
        }
        AuthBackTipsDialogUtil.g(this, "2");
    }

    private int a0() {
        return f0() ? this.E.auth : this.E.others;
    }

    @Nullable
    private String b0() {
        if (this.B.purpose == 40000111) {
            return "40000111";
        }
        return null;
    }

    private void c0() {
        d0();
        this.C = new AuthStepTipsAdapter(this, this.D);
        this.rvStep.setLayoutManager(new LinearLayoutManager(this));
        this.rvStep.setAdapter(this.C);
    }

    @PermissionDenied("android.permission.CAMERA")
    private void cameraPermissionDenied() {
        BaseUtils.p(this, getResources().getString(R.string.permission_denied_camera));
    }

    @PermissionGranted({"android.permission.CAMERA"})
    private void cameraPermissionGranted() {
        p0();
    }

    private void d0() {
        if (this.D == null) {
            this.D = new ArrayList<>(4);
        }
        this.D.clear();
        this.D.add(new AuthStepTipsInfo(getResources().getString(2131886822), 2131230905));
        this.D.add(new AuthStepTipsInfo(getResources().getString(2131886821), 2131230904));
        this.D.add(new AuthStepTipsInfo(getResources().getString(2131886819), 2131230903));
        this.D.add(new AuthStepTipsInfo(getResources().getString(2131886811), 2131230918));
    }

    private void e0() {
        this.f.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                ECLiveCheckPreviewActivity.this.h0(view);
            }
        });
        this.a.setVisibility(this.userSession.f().showCustomerService ? 0 : 8);
        this.a.setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                ECLiveCheckPreviewActivity.this.i0(view);
            }
        });
    }

    private boolean f0() {
        return this.B.purpose == 0;
    }

    private boolean g0() {
        return f0() && !this.userSession.b().canEnterMinimaListProcess;
    }

    @SensorsDataInstrumented
    public void h0(View view) {
        if (g0()) {
            Z();
        } else if (this.B.purpose == 40000101) {
            q0();
        } else {
            finish();
        }
        SensorsDataAutoTrackHelper.trackViewOnClick(view);
        AutoTrackHelper.trackViewOnClick(view);
    }

    @SensorsDataInstrumented
    public void i0(View view) {
        if (BaseUtils.l()) {
            SensorsDataAutoTrackHelper.trackViewOnClick(view);
            AutoTrackHelper.trackViewOnClick(view);
        } else {
            openCustomerService();
            SensorsDataAutoTrackHelper.trackViewOnClick(view);
            AutoTrackHelper.trackViewOnClick(view);
        }
    }

    public Observable j0() {
        return this.apiHelper.a().g(this.B.mobilePhone);
    }

    public Observable k0() {
        return this.apiHelper.a().h0(this.B.mobilePhone);
    }

    private void l0(String str, String str2, String str3) {
        if (TextUtils.equals("FACEPP", str) || TextUtils.equals("ADVANCE", str) || TextUtils.equals("FACEPP_V5", str)) {
            return;
        }
        ThirdPartEventUtils.D(this, GeneralConstants.f, new JsonParamsBuilder().d("step").a(FaceDetectErrorStep.FACE_DETECT.a()).d("errorCode").a(str2).d("errorMessage").a(str3).c());
    }

    private void m0(String str) {
        if (TextUtils.equals("FACEPP", str) && f0()) {
            ThirdPartEventUtils.z(this, EasycashUmengEvent.q2, new JsonParamsBuilder().d(com.umeng.analytics.pro.d.f201y).a("new").c());
        }
    }

    private void n0(VerifyLivenessMethodResponse verifyLivenessMethodResponse) {
        ThirdPartEventUtils.z(this, EasycashUmengEvent.T1, new JsonParamsBuilder().d("purpose").a(String.valueOf(this.B.purpose)).d("source").a(verifyLivenessMethodResponse.body.source).c());
    }

    public void o0(VerifyLivenessMethodResponse verifyLivenessMethodResponse) {
        dismissLoadingDialog();
        if (this.B.purpose != 40000111 || TextUtils.equals("FACEPP_V5", verifyLivenessMethodResponse.body.source)) {
            LivenessDetectionManager.b(this, new LivenessConfig.Builder().n(verifyLivenessMethodResponse.body.source).j(a0()).q(f0()).p(verifyLivenessMethodResponse.body.timeout).m(f0()).l(new FaceV5Manager.FaceV5ManagerApi() {
                public final Observable a() {
                    Observable j02;
                    j02 = ECLiveCheckPreviewActivity.this.j0();
                    return j02;
                }
            }).k(new AdvanceLiveManager.AdvanceLiveManagerApi() {
                public final Observable a() {
                    Observable k02;
                    k02 = ECLiveCheckPreviewActivity.this.k0();
                    return k02;
                }
            }).i(), new LivenessDetectionManager.LivenessDetectionManagerListener() {
                public void b(@NonNull FaceIdCard faceIdCard) {
                    ?? r0 = ECLiveCheckPreviewActivity.this;
                    ECLiveRecognitionResultActivity.startRecognitionResultActivityForResult(r0, faceIdCard, ((ECLiveCheckPreviewActivity) r0).B);
                }

                public void a(String str, String str2, String str3) {
                }
            });
            m0(verifyLivenessMethodResponse.body.source);
            l0(verifyLivenessMethodResponse.body.source, LiveErrorCode.NETWORK_AUTHORIZATION_FAILED.a(), getString(2131886799));
            n0(verifyLivenessMethodResponse);
        }
    }

    private void p0() {
        showLoadingDialog();
        this.apiHelper.a().P1(this.B.mobilePhone, f0(), b0()).a(new IdnObserver<VerifyLivenessMethodResponse>(this) {
            @Override
            public void onSuccess(VerifyLivenessMethodResponse verifyLivenessMethodResponse) {
                ECLiveCheckPreviewActivity.this.o0(verifyLivenessMethodResponse);
            }
        });
    }

    private void q0() {
        Intent intent = new Intent((Context) this, (Class<?>) SettingActivity.class);
        intent.setFlags(67108864);
        startActivity(intent);
    }

    private boolean r0(Runnable runnable) {
        ECSurveyUtils eCSurveyUtils = this.F;
        if (eCSurveyUtils != null) {
            return eCSurveyUtils.y(runnable);
        }
        return false;
    }

    public static void startECLiveCheckPreviewActivity(Activity activity, @NonNull LiveDetectionArgs liveDetectionArgs) {
        if (TextUtils.isEmpty(liveDetectionArgs.mobilePhone)) {
            return;
        }
        ThirdPartEventUtils.z(activity, EasycashUmengEvent.S1, new JsonParamsBuilder().d("purpose").a(String.valueOf(liveDetectionArgs.purpose)).c());
        Intent intent = new Intent(activity, (Class<?>) ECLiveCheckPreviewActivity.class);
        intent.putExtra("live_detection_args", (Parcelable) liveDetectionArgs);
        activity.startActivity(intent);
    }

    public static void startECLiveCheckPreviewActivityForResult(Activity activity, @NonNull LiveDetectionArgs liveDetectionArgs) {
        if (TextUtils.isEmpty(liveDetectionArgs.mobilePhone)) {
            return;
        }
        ThirdPartEventUtils.z(activity, EasycashUmengEvent.S1, new JsonParamsBuilder().d("purpose").a(String.valueOf(liveDetectionArgs.purpose)).c());
        Intent intent = new Intent(activity, (Class<?>) ECLiveCheckPreviewActivity.class);
        intent.putExtra("live_detection_args", (Parcelable) liveDetectionArgs);
        activity.startActivityForResult(intent, 1003);
    }

    @Override
    protected void B(@NonNull Bundle bundle) {
        super.B(bundle);
        this.B = bundle.getParcelable("live_detection_args");
    }

    @Override
    protected void D() {
        e0();
        c0();
        AuthBusinessProcessor.a().e(this);
    }

    @Override
    protected void N(@NonNull Bundle bundle) {
        super.N(bundle);
        bundle.putParcelable("live_detection_args", this.B);
    }

    @Override
    @NonNull
    protected String O() {
        return this.B.mobilePhone;
    }

    @Override
    public int getLayoutID() {
        return R.layout.layout_yqd_liveness_recognition_preview;
    }

    @Override
    public String getTrackUrl() {
        return j0.b.a(this);
    }

    @Override
    public boolean isNeedProcessScreenShot() {
        return j0.a.a(this);
    }

    @Override
    protected void onActivityResult(int i, int i2, Intent intent) {
        super.onActivityResult(i, i2, intent);
        LivenessDetectionManager.a(this, i, i2, intent, new LivenessDetectionManager.LivenessDetectionManagerListener() {
            public void b(@NonNull FaceIdCard faceIdCard) {
                ?? r0 = ECLiveCheckPreviewActivity.this;
                ECLiveRecognitionResultActivity.startRecognitionResultActivityForResult(r0, faceIdCard, ((ECLiveCheckPreviewActivity) r0).B);
            }

            public void a(String str, String str2, String str3) {
            }
        });
        if (i == 1004) {
            if (i2 == -1 && intent != null) {
                setResult(-1, intent);
                finish();
            } else if (i2 == 10) {
                this.permissionHelper.requestPermissions((Activity) this, "android.permission.CAMERA");
            }
        }
    }

    public void onBackPressed() {
        if (g0()) {
            Z();
        } else if (this.B.purpose == 40000101) {
            q0();
        } else {
            super/*androidx.activity.ComponentActivity*/.onBackPressed();
        }
    }

    @OnClick({R.id.btn_start_recognition})
    public void onStartRecognition(View view) {
        if (BaseUtils.l()) {
            return;
        }
        this.permissionHelper.requestPermissions((Activity) this, "android.permission.CAMERA");
    }

    @Override
    public Disposable runOnActiveEvent(Runnable runnable) {
        return com.lingyue.idnbaselib.framework.lifecycle.m.a(this, runnable);
    }

    @Override
    @SuppressLint({"CheckResult"})
    public Disposable runOnCreated(@NonNull Runnable runnable) {
        return com.lingyue.idnbaselib.framework.lifecycle.m.b(this, runnable);
    }

    @Override
    @SuppressLint({"CheckResult"})
    public Disposable runOnDestroy(@NonNull Runnable runnable) {
        return com.lingyue.idnbaselib.framework.lifecycle.m.c(this, runnable);
    }

    @Override
    @SuppressLint({"CheckResult"})
    public Disposable runOnEvent(@NonNull LifecycleEvent lifecycleEvent, @Nullable Runnable runnable) {
        return com.lingyue.idnbaselib.framework.lifecycle.m.d(this, lifecycleEvent, runnable);
    }

    @Override
    public Disposable runOnEvents(@NonNull LifecycleEvent[] lifecycleEventArr, @Nullable Runnable runnable) {
        return com.lingyue.idnbaselib.framework.lifecycle.m.e(this, lifecycleEventArr, runnable);
    }

    @Override
    protected void z() {
        super.z();
        showLoadingDialog();
        new GeneralConfigManager(this).h(Arrays.asList("app_config.living_info_action_number", EasycashConfigKey.AUTH_LIVING_FAILED_TRY_ALL_PROCESS_AGAIN), new GeneralConfigManager.Callback() {
            @Override
            public void a() {
                ECLiveCheckPreviewActivity.this.dismissLoadingDialog();
                ECLiveCheckPreviewActivity.this.L();
                ECLiveCheckPreviewActivity.this.E = new LivingActionNumber();
            }

            @Override
            public void b(@NonNull HashMap<String, String> hashMap) {
                ECLiveCheckPreviewActivity.this.dismissLoadingDialog();
                ECLiveCheckPreviewActivity.this.L();
                ECLiveCheckPreviewActivity eCLiveCheckPreviewActivity = ECLiveCheckPreviewActivity.this;
                eCLiveCheckPreviewActivity.E = (LivingActionNumber) eCLiveCheckPreviewActivity.gson.l(hashMap.get("app_config.living_info_action_number"), new TypeToken<LivingActionNumber>() {
                }.e());
                ECLiveCheckPreviewActivity.this.userSession.f().authLivingFailedTryAllProcessAgain = Boolean.parseBoolean(hashMap.get(EasycashConfigKey.AUTH_LIVING_FAILED_TRY_ALL_PROCESS_AGAIN));
            }
        });
        if (g0()) {
            ECSurveyUtils eCSurveyUtils = new ECSurveyUtils(this, UserSatisfactionSurveyScene.SCENE_LIVENESS);
            this.F = eCSurveyUtils;
            eCSurveyUtils.A();
        }
    }
}