京东到家.apk(点击下载) / ThumbnailUpReportProtocol.java


package com.jdjr.risk.identity.face.protocol;

import android.content.Context;
import android.text.TextUtils;
import com.jdcn.fcsdk.FsEngine;
import com.jdjr.risk.identity.face.bean.DeviceInfo;
import com.jdjr.risk.identity.face.bean.Flow;
import com.jdjr.risk.identity.face.bean.IdentitySdkParams;
import com.jdjr.risk.identity.face.bean.UploadVerifyRecord;
import com.jdjr.risk.identity.face.constants.VerifyFaceContants;
import com.jdjr.risk.identity.face.utils.BiometricTokenGetUtil;
import com.jdjr.risk.jdcn.common.network.FsHttpManager;
import com.jdjr.risk.jdcn.common.utils.FsGsonUtil;
import com.jdjr.risk.jdcn.common.utils.JDCNImageUtils;
import com.jdjr.risk.jdcn.common.utils.JDCNLogUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

public class ThumbnailUpReportProtocol {
    public static String uploadVerifyRecord(Context context, byte[] bArr, int i, int i2, int i3, int i4, boolean z, String str, IdentitySdkParams identitySdkParams) {
        byte[] bArr2;
        if (bArr == null) {
            return "";
        }
        if (Math.abs(bArr.length - (((i * i2) * 3) / 2)) > 2) {
            return "";
        }
        if (!z) {
            try {
                bArr2 = JDCNImageUtils.yuv2JpegRotaingWithoutMirror(bArr, i, i2, 70, 142, 80, i4);
            } catch (Throwable th) {
                th.printStackTrace();
                return "";
            }
        } else {
            bArr2 = JDCNImageUtils.yuv2JpegRotaingWithoutMirror(bArr, i, i2, 80, 512, i2, i4);
            String str2 = VerifyFaceContants.LOG_TAG;
            JDCNLogUtils.d(str2, "炫彩图大小 = " + bArr2.length);
        }
        if (bArr2 == null) {
            return "";
        }
        String encryptFaceDataAndToBase64 = FsEngine.getInstance().encryptFaceDataAndToBase64(bArr2, context);
        UploadVerifyRecord uploadVerifyRecord = new UploadVerifyRecord();
        String buildBiometricToken = BiometricTokenGetUtil.buildBiometricToken(context, identitySdkParams.getBusinessId(), identitySdkParams.getUserId());
        if (TextUtils.isEmpty(buildBiometricToken)) {
            buildBiometricToken = "BiometricManagerError";
        }
        uploadVerifyRecord.setSdkToken(buildBiometricToken);
        if (!z) {
            uploadVerifyRecord.setBusinessId(identitySdkParams.getBusinessId());
        } else {
            uploadVerifyRecord.setBusinessId(identitySdkParams.getBusinessId() + "_color");
        }
        uploadVerifyRecord.setDeviceId("M101101011811260156");
        DeviceInfo deviceInfo = new DeviceInfo();
        deviceInfo.deviceSN = "M101101011811260156";
        uploadVerifyRecord.setDeviceInfo(deviceInfo);
        Flow flow = new Flow();
        flow.setVerifyId(identitySdkParams.getUuid_from_identity());
        flow.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
        flow.setAlgChannel("jdjr");
        flow.setImgBase64(encryptFaceDataAndToBase64);
        flow.setNirImgBase64("");
        flow.setVerifyResult("VARIFY_PASS");
        flow.setVerifyScore(-1.0d);
        flow.setUserId(identitySdkParams.getUserId());
        flow.setModelVersion("3.4.0");
        flow.setLiveScore(0.0d);
        flow.setHackScore(0.0d);
        flow.setGammaScore(0.0d);
        flow.setPhiScore(0.0d);
        flow.setThetaScore(0.0d);
        flow.setBlurScore(0.0d);
        flow.setDistance(0.0d);
        flow.setDistance(0.0d);
        flow.setDecisionCode("0");
        flow.setEncryptionType("AKS");
        flow.setOrderId(identitySdkParams.getVerifyToken());
        if (!z) {
            flow.setExt("" + i3);
        } else {
            flow.setExt("{\"type\":" + str + "}");
        }
        ArrayList arrayList = new ArrayList();
        arrayList.add(flow);
        uploadVerifyRecord.setFlowList(arrayList);
        return FsHttpManager.postJsonString("https://facegw.jd.com/record/uploadVerifyRecord", FsGsonUtil.toJsonString(uploadVerifyRecord), false);
    }
}