常见问题

Q1.如果工程开启代码混淆,需要额外做什么吗?

由于代码混淆后会找不到方法导致发生crash,所以建议先在混淆配置中忽略liveness.jar包和library目录。

具体操作为:在proguard文件中加入下面的代码解决:

-dontwarn com.linkface.**
-keep class com.linkface.** { *; }
Q2.调用公有云接口,得到防hack得分或者进行人脸比对

活体检测成功之后,SDK会返回对应的人脸图片以及一个加密的二进制文件。您可以把这个加密的二进制文件(或者保存的人脸图片)上传到公有云接口,进行防hack校验或者人脸比对。

1.进行活体防hack校验:

如果上传加密的二进制文件,请参考:http://devdoc.cloud.linkface.cn/resources/resources_upload_liveness_data.html

如果上传人脸图片,请参考:http://devdoc.cloud.linkface.cn/resources/resources_upload_image.html

2.进行人脸比对:

如果上传加密的二进制文件,请参考:http://devdoc.cloud.linkface.cn/identity/identity_liveness_selfie_verification.html

如果上传人脸图片,请参考:http://devdoc.cloud.linkface.cn/identity/identity_historical_selfie_verification.html

Q3.活体设置随机动作

比如现在是按照顺序眨眼,张嘴,点头,摇头。您可以写个随机算法将它们顺序打乱,然后在设置就行

Q4.活体Android编译器要求

这个是6.0以上的api,您只需要设置Android 的编译sdk为6.0以上就能编译通过

Q5.活体检测后生成的图像文件怎么取得

通过调用FaceOverlapFragment的getImageResult函数可以获取到结果

Q6.身份证扫描界面,左上角的返回键的适配,是你们在sdk里做的吗

scanIntent.putExtra(IDCardActivity.EXTRA_BACK_DRAWABLE_ID, R.drawable.scan_back);//用这个参数控制显示资源

Q7.怎么获取生成的文件的路径

您可以设置这个保存的路径,通过 LivenessActivity.java 的EXTRA_RESULT_PATH(默认为/sdcard/liveness/)设置路径,保存的名字为LivenessActivity.java的LIVENESS_FILE_NAME(默认为livenessResult)变量,您可以参考 LivenessActivity.java 中的saveFinalEncryFile方法,最终的LIVENESS_FILE_NAME文件您可以拿去做比对

Q8.导入SenseID_活体识别_SDK时编译报错怎么回事

点击 Import project 的时候,请选择 LFLiveness 这个目录

Q9.log打印输出add license ret :-14

包名错误。我们的 sdk 和包名是绑定的。用你们公司商务提供的包名替换即可: Eclipse开发环境在AndroidManifext.xml文件修改manifest标签的package属性;Android studio开发环境在工程build.gradle修改applicationId

Q10.如何修改相机宽高比/预览分辨率?

在LFLivenessLibrary utils包下Constants类去修改: public static final int PREVIEW_WIDTH = 640; public static final int PREVIEW_HEIGHT = 480;

注意:修改这两个值调整图片大小之后发现在个别手机上不好使(华为mate7, 设置宽1440,高1080之后就一直停留在肖像认证马上开始的界面了)?

此时可以打印这个相机支持的分辨率参数,在类CameraOverlapFragment中的debugPreviewSize()方法中: 在for循环中,添加Log.i(TAG, "width=" + psize.width + " height=" + psize.height + "/n"); 修改成此设备相机支持的分辨率即可。

Q11.集成SDK运行出错:RESULT_CREATE_HANDLE_ERROR = 1001 和finance library not found

在日志log中会找到以下错误finance library not found! 从以下两个方面进行排查:

1) 从我们提供的SDK包中或者是demo 中去获取对应的so库文件

2)如果发现集成之后有这个对应的so文件,则确认下在build.gradle 中是否配置了对应的两种架构(活体&OCR 提供了两种架构的so文件:armeabi-v7a 和arm64-v8a)

加入以下 参数配置:

defaultConfig {

   ......
    ndk {
        abiFilters "arm64-v8a"
        abiFilters "armeabi-v7a"
    }
}

如果需要支持 armeabi 这个架构, 需要做如下 操作:

将sdk中提供的aar文件后缀名改为.zip,用解压工具解压,在armeabi-v7a同级目录下创建armeabi文件夹,将armeabi-v7a下的so包复制到armeabi中,如果不需要armeabi-v7a和armeabi-v8a可以将其删除,用压缩工具重新压缩,最后再将后缀名改为aar即可。

意见反馈

非常感谢您使用我们公司的产品。

如果您在使用过程中遇到任何的问题,或者对我们有任何的批评建议,都欢迎您随时与我们联系。我们的工作人员会在收到邮件后,尽快给您回复。

邮箱:market@linkface.cn

results matching ""

    No results matching ""